net461/RubrikSecurityCloud.PowerShell.dll-Help.xml

<?xml version="1.0" encoding="utf-8"?>
<helpItems schema="maml" xmlns="http://msh">
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Connect-Rsc</command:name>
      <command:verb>Connect</command:verb>
      <command:noun>Rsc</command:noun>
      <maml:description>
        <maml:para>Establishes a user session with Rubrik Security Cloud</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>The Connect-Rsc Cmdlet is used to connect to the Rubrik Security Cloud (RSC) API. RSC then returns a unique token to represent the user's credentials for subsequent calls. The token is stored securly in a .NET object within this PowerShell session. The recommended authentication method is a Rsc Service Account. Service Account credentials may be provided as parameters, or stored in an encrypted credential file, using Set-RscServiceAccountFile. Service Account .json files (unencryped) are not supported.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Connect-Rsc</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Server</maml:name>
          <maml:description>
            <maml:para>FQDN or the Rubrik Security Cloud Instance. I.e. mycompany.my.rubrik.com This can also be found in the JSON file downloaded from RSC when creating the Service Account</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
          <maml:name>ClientId</maml:name>
          <maml:description>
            <maml:para>The Service Account ClientId. This can be found as "client_id" in the JSON file downloaded from RSC when creating the Service Account</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
          <maml:name>ClientSecret</maml:name>
          <maml:description>
            <maml:para>The Service Account ClientSecret in SecureString format. The ClientSecret can be found as "client_secret" in the JSON file downloaded from RSC when creating the Service Account Convert the JSON plain text field into a secure string with: $secret = $(Get-Content service_account_file.json | ConvertFrom-Json).client_secret | ConvertTo-SecureString -AsPlainText</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">SecureString</command:parameterValue>
          <dev:type>
            <maml:name>SecureString</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Connect-Rsc</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>FromEnv</maml:name>
          <maml:description>
            <maml:para>Use a service account, which path is stored in an environment variable</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Connect-Rsc</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>IfNeeded</maml:name>
          <maml:description>
            <maml:para>Connect if there is no existing connection</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Connect-Rsc</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>ServiceAccountFile</maml:name>
          <maml:description>
            <maml:para>Used to specify the service account file downloaded from Rubrik Security Cloud</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
        <maml:name>ClientId</maml:name>
        <maml:description>
          <maml:para>The Service Account ClientId. This can be found as "client_id" in the JSON file downloaded from RSC when creating the Service Account</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
        <maml:name>ClientSecret</maml:name>
        <maml:description>
          <maml:para>The Service Account ClientSecret in SecureString format. The ClientSecret can be found as "client_secret" in the JSON file downloaded from RSC when creating the Service Account Convert the JSON plain text field into a secure string with: $secret = $(Get-Content service_account_file.json | ConvertFrom-Json).client_secret | ConvertTo-SecureString -AsPlainText</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">SecureString</command:parameterValue>
        <dev:type>
          <maml:name>SecureString</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>FromEnv</maml:name>
        <maml:description>
          <maml:para>Use a service account, which path is stored in an environment variable</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>IfNeeded</maml:name>
        <maml:description>
          <maml:para>Connect if there is no existing connection</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>Server</maml:name>
        <maml:description>
          <maml:para>FQDN or the Rubrik Security Cloud Instance. I.e. mycompany.my.rubrik.com This can also be found in the JSON file downloaded from RSC when creating the Service Account</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>ServiceAccountFile</maml:name>
        <maml:description>
          <maml:para>Used to specify the service account file downloaded from Rubrik Security Cloud</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>None</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>Connect-Rsc -Server mycompany.my.rubrik.com -ClientId xxxxxxxxx -ClientSecret xxxxxxxxx</dev:code>
        <dev:remarks>
          <maml:para>Connect to Rubrik Security Cloud, using the URL, Client Id and Client Secret</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>Set-RscServiceAccountFile -InputFilePath rubrik_service_account.json
             Connect-Rsc</dev:code>
        <dev:remarks>
          <maml:para>Connect to Rubrik Security Cloud, using a service account file, stored in the default RSC credential store in the user profile The service account file can be downloaded from the Rsc Web UI.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>Set-RscServiceAccountFile -InputFilePath rubrik_service_account.json -OutputFilePath rubrik_service_account.xml
             Connect-Rsc -ServiceAccountFile rubrik_service_account.xml</dev:code>
        <dev:remarks>
          <maml:para>Connect to Rubrik Security Cloud, using a service account file, stored in a location other than the default RSC credential store. The service account file can be downloaded from the Rsc Web UI.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>Set-RscServiceAccountFile -InputFilePath rubrik_service_account.json -OutputFilePath $ENV:RSC_SERVICE_ACCOUNT_FILE
             Connect-Rsc -FromEnv</dev:code>
        <dev:remarks>
          <maml:para>Connect to Rubrik Security Cloud, using a service account file, stored in a location held in the OS environment variable RSC_SERVICE_ACCOUNT_FILE The service account file can be downloaded from the Rsc Web UI.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Disconnect-Rsc</command:name>
      <command:verb>Disconnect</command:verb>
      <command:noun>Rsc</command:noun>
      <maml:description>
        <maml:para>{{ Fill in the Synopsis }}</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>{{ Fill in the Description }}</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Disconnect-Rsc</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>None</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS C:\&gt; {{ Add example code here }}</dev:code>
        <dev:remarks>
          <maml:para>{{ Add example description here }}</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Get-RscCmdlet</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscCmdlet</command:noun>
      <maml:description>
        <maml:para>Return info about SDK cmdlets</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>Look up a GraphQL Operation and return info about the cmdlet that implements it.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-RscCmdlet</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
          <maml:name>AnyGqlRootFieldName</maml:name>
          <maml:description>
            <maml:para>The name of the GraphQL Operation to look up.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
        <maml:name>AnyGqlRootFieldName</maml:name>
        <maml:description>
          <maml:para>The name of the GraphQL Operation to look up.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="false" position="named" aliases="none">
        <maml:name>ExistingGqlRootFieldName</maml:name>
        <maml:description>
          <maml:para>The name of the GraphQL Operation to look up. </maml:para>
          <maml:para>```yaml Type: GqlRootFieldName Parameter Sets: LookupExistingGqlRootField Aliases: Accepted values: Unknown, accountId, accountSettings, activeCustomAnalyzers, activeDirectoryDomain, activeDirectoryDomainController, activeDirectoryDomainControllers, activeDirectoryDomains, activeDirectorySearchSnapshots, activitySeries, activitySeriesConnection, adGroupMembers, adVolumeExports, addAdGroupsToHierarchy, addAndJoinSmbDomain, addAwsAuthenticationServerBasedCloudAccount, addAwsIamUserBasedCloudAccount, addAzureCloudAccount, addAzureCloudAccountExocomputeConfigurations, addAzureCloudAccountWithoutOauth, addCloudNativeSqlServerBackupCredentials, addClusterCertificate, addClusterNodes, addClusterRoute, addConfiguredGroupToHierarchy, addCrossAccountServiceConsumer, addCustomIntelFeed, addDb2Instance, addGlobalCertificate, addInventoryWorkloads, addK8sCluster, addK8sProtectionSet, addManagedVolume, addMongoSource, addMosaicStore, addMssqlHost, addNodesToCloudCluster, addO365Org, addPolicyObjects, addRoleAssignments, addSapHanaSystem, addStorageArrays, addSyslogExportRule, addVlan, addVmAppConsistentSpecs, agentDeploymentSetting, airGapStatus, allAccountOwners, allAccountProducts, allAccountsWithExocomputeMappings, allAgentDeploymentSettings, allAllowedOrgAdminOperations, allAuthorizationsForGlobalResource, allAuthorizationsForObject, allAuthorizationsForObjects, allAvailabilityZonesByRegionFromAws, allAwsCdmVersions, allAwsCloudAccountConfigs, allAwsCloudAccountsWithFeatures, allAwsComputeSettings, allAwsExocomputeConfigs, allAwsInstanceProfileNames, allAwsPermissionPolicies, allAwsRegions, allAzureArmTemplatesByFeature, allAzureBlobContainersByStorageAccount, allAzureCdmVersions, allAzureCloudAccountMissingPermissions, allAzureCloudAccountSubnetsByRegion, allAzureCloudAccountSubscriptionsByFeature, allAzureCloudAccountTenants, allAzureDiskEncryptionSetsByRegion, allAzureEncryptionKeys, allAzureExocomputeConfigsInAccount, allAzureKeyVaultsByRegion, allAzureManagedIdentities, allAzureNativeAvailabilitySetsByRegionFromAzure, allAzureNativeExportCompatibleDiskTypesByRegionFromAzure, allAzureNativeExportCompatibleVmSizesByRegionFromAzure, allAzureNativeResourceGroupsInfoIfExist, allAzureNativeSecurityGroupsByRegionFromAzure, allAzureNativeStorageAccountsFromAzure, allAzureNativeSubnetsByRegionFromAzure, allAzureNativeVirtualMachineSizes, allAzureNativeVirtualNetworks, allAzureNsgs, allAzureRegions, allAzureRegionsWithAzDetails, allAzureResourceGroups, allAzureSqlDatabaseServerElasticPools, allAzureStorageAccounts, allAzureStorageAccountsByRegion, allAzureSubnets, allAzureSubscriptionWithExocomputeMappings, allAzureVnets, allBackupThrottleSettings, allCdmGuestCredentials, allCdmOvaDetails, allCdpVmsInfos, allCloudAccountExocomputeMappings, allCloudAccounts, allCloudDirectShares, allCloudDirectSites, allCloudNativeFileRecoveryEligibleSnapshots, allCloudNativeLabelKeys, allCloudNativeLabelValues, allCloudNativeTagKeys, allCloudNativeTagValues, allClusterConnection, allClusterGlobalSlas, allClusterReplicationTargets, allClusterWebCertsAndIpmis, allClustersTotpAckStatus, allConnectedClusters, allCrossAccountClusters, allCurrentFeaturePermissionsForCloudAccounts, allCurrentOrgIdentityProviders, allDbParameterGroupsByRegionFromAws, allDbSubnetGroupsByRegionFromAws, allDeploymentIpAddresses, allDhrcActiveRecommendations, allDhrcLatestMetrics, allDhrcScores, allDistributionListDigests, allEc2KeyPairsByRegionFromAws, allEffectiveRbacPermissions, allEnabledFeaturesForAccount, allEventDigests, allFeaturePermissionsForGcpCloudAccount, allFileActivities, allGcpCloudAccountMissingPermissionsForAddition, allGcpCloudAccountProjectsByFeature, allGcpCloudAccountProjectsForOauth, allGcpNativeAvailableKmsCryptoKeys, allGcpNativeCompatibleMachineTypes, allGcpNativeNetworks, allGcpNativeProjectsWithAccessibleNetworks, allGcpNativeRegions, allGcpNativeStoredMachineTypes, allGcpNativeStoredMachineTypesInProject, allGcpNativeStoredNetworkNames, allGcpNativeStoredNetworkNamesInProject, allGcpNativeStoredRegions, allGcpNativeStoredRegionsInProject, allHostedAzureRegions, allIntegrations, allInventoryWorkloads, allIssuesJobIds, allK8sReplicaSnapshotInfos, allKmsEncryptionKeysByRegionFromAws, allLatestFeaturePermissionsForCloudAccounts, allLicensedProducts, allMissingClusters, allMssqlDatabaseRestoreFiles, allNcdObjectsOverTimeData, allNcdSlaComplianceData, allNcdTaskData, allNcdUsageOverTimeData, allNosqlStorageLocations, allO365AdGroups, allO365OrgStatuses, allO365SubscriptionsAppTypeCounts, allObjectsAlreadyAssignedToOrgs, allOptionGroupsByRegionFromAws, allOrgsByIds, allPendingActions, allQuarantinedDetailsForSnapshots, allQuarantinedDetailsForWorkload, allRcvAccountEntitlements, allRcvPrivateEndpointConnections, allResourceGroupsFromAzure, allS3BucketsDetailsFromAws, allS3BucketsFromAws, allSharepointSiteExclusions, allSlaSummariesByIds, allSnapshotPvcs, allSnapshotsClosestToPointInTime, allStorageArrays, allSupportedAwsEksVersions, allSupportedAwsRdsDatabaseInstanceClasses, allTargetMappings, allTargets, allTopRiskPolicySummaries, allUnmanagedObjectsSupportedTypes, allUserFiles, allUsersOnAccount, allUsersOnAccountConnection, allValidReplicationSources, allValidReplicationTargets, allVcenterHotAddProxyVms, allVirtualMachineFiles, allVmRecoveryJobsInfo, allVmwareCdpStateInfos, allVpcsByRegionFromAws, allVpcsFromAws, allVsphereVmsByFids, allWebhooks, amiTypeForAwsNativeArchivedSnapshotExport, analyzerGroups, analyzerUsages, anomalyResultOpt, anomalyResults, anomalyResultsGrouped, approveRcvPrivateEndpoint, archivalStorageUsage, archiveCrawl, archiveK8sCluster, areMultiGeoBackupsEnabled, assignMssqlSlaDomainProperties, assignMssqlSlaDomainPropertiesAsync, assignProtection, assignRetentionSLAToSnappables, assignRetentionSLAToSnapshots, assignSla, assignSlaToMongoDbCollection, assignSlasForSnappableHierarchies, assignableGlobalCertificates, awsArtifactsToDelete, awsCloudAccountListSecurityGroups, awsCloudAccountListSubnets, awsCloudAccountListVpcs, awsCloudAccountWithFeatures, awsComputeSettings, awsExocomputeClusterConnect, awsExocomputeGetClusterConnectionInfo, awsNativeAccount, awsNativeAccounts, awsNativeEbsVolume, awsNativeEbsVolumes, awsNativeEbsVolumesByName, awsNativeEc2Instance, awsNativeEc2Instances, awsNativeEc2InstancesByName, awsNativeRdsExportDefaults, awsNativeRdsInstance, awsNativeRdsInstances, awsNativeRdsPointInTimeRestoreWindow, awsNativeRoot, awsNativeS3Bucket, awsTrustPolicy, azureAdDirectories, azureAdDirectory, azureAdObjectsByType, azureCloudAccountDetailsForFeature, azureCloudAccountPermissionConfig, azureCloudAccountSubscriptionWithFeatures, azureCloudAccountTenant, azureCloudAccountTenantWithExoConfigs, azureNativeManagedDisk, azureNativeManagedDisks, azureNativeResourceGroup, azureNativeResourceGroups, azureNativeRoot, azureNativeSubscription, azureNativeSubscriptions, azureNativeVirtualMachine, azureNativeVirtualMachines, azureO365CheckNSGOutboundRules, azureO365CheckNetworkSubnet, azureO365CheckResourceGroupName, azureO365CheckStorageAccountAccessibility, azureO365CheckStorageAccountName, azureO365CheckSubscriptionQuota, azureO365CheckVirtualNetworkName, azureO365Exocompute, azureO365GetAzureHostType, azureO365GetNetworkSubnetUnusedAddr, azureO365ValidateUserRoles, azureOauthConsentComplete, azureOauthConsentKickoff, azureRegions, azureResourceGroups, azureSqlDatabase, azureSqlDatabaseDbPointInTimeRestoreWindowFromAzure, azureSqlDatabaseServer, azureSqlDatabaseServers, azureSqlDatabases, azureSqlManagedInstanceDatabase, azureSqlManagedInstanceDatabases, azureSqlManagedInstanceDbPointInTimeRestoreWindowFromAzure, azureSqlManagedInstanceServer, azureSqlManagedInstanceServers, azureStorageAccounts, azureSubnets, azureSubscriptions, azureUpdateTenantForSubscription, azureVNets, backupAzureAdDirectory, backupM365Mailbox, backupM365Onedrive, backupM365SharepointDrive, backupM365Team, backupO365Mailbox, backupO365Onedrive, backupO365SharePointSite, backupO365SharepointDrive, backupO365SharepointList, backupO365Team, batchDeassignRoleFromUserGroups, batchExportHypervVm, batchExportNutanixVm, batchInstantRecoverHypervVm, batchMountHypervVm, batchMountNutanixVm, batchOnDemandBackupHypervVm, batchQuarantineSnapshot, batchReleaseFromQuarantineSnapshot, beginManagedVolumeSnapshot, browseCalendar, browseContacts, browseFolder, browseMssqlDatabaseSnapshot, browseO365TeamConvChannels, browseOnedrive, browseSharepointDrive, browseSharepointList, browseSnapshotFileConnection, browseTeamsChannels, browseTeamsDrive, bulkAddNasShares, bulkCreateFilesetTemplates, bulkCreateFilesets, bulkCreateNasFilesets, bulkCreateOnDemandMssqlBackup, bulkDeleteAwsCloudAccountWithoutCft, bulkDeleteCassandraSources, bulkDeleteFailoverCluster, bulkDeleteFailoverClusterApp, bulkDeleteFileset, bulkDeleteFilesetTemplate, bulkDeleteHost, bulkDeleteMongodbSources, bulkDeleteNasShares, bulkDeleteNasSystems, bulkOnDemandSnapshotNutanixVm, bulkRefreshHosts, bulkRegisterHost, bulkRegisterHostAsync, bulkTierExistingSnapshots, bulkUpdateExchangeDag, bulkUpdateFilesetTemplate, bulkUpdateHost, bulkUpdateMssqlAvailabilityGroup, bulkUpdateMssqlDbs, bulkUpdateMssqlInstance, bulkUpdateMssqlPropertiesOnHost, bulkUpdateMssqlPropertiesOnWindowsCluster, bulkUpdateNasShares, bulkUpdateOracleDatabases, bulkUpdateOracleHosts, bulkUpdateOracleRacs, bulkUpdateRansomwareInvestigationStatus, cancelActivitySeries, cancelDownloadPackage, cancelScheduledUpgrade, cancelTaskchain, cancelThreatHunt, cassandraColumnFamilies, cassandraColumnFamily, cassandraColumnFamilyRecoverableRange, cassandraColumnFamilySchema, cassandraKeyspace, cassandraKeyspaces, cassandraSource, cassandraSources, cdmHierarchySnappableNew, cdmHierarchySnappablesNew, cdmInventorySubHierarchyRoot, cdmMssqlLogShippingTarget, cdmMssqlLogShippingTargets, cdmVersionCheck, certificateInfo, certificateSigningRequest, certificateSigningRequests, certificates, certificatesWithKey, changePassword, changeVfdOnHost, checkAzurePersistentStorageSubscriptionCanUnmap, checkCloudComputeConnectivityJobProgress, checkCloudNativeLabelRuleNameUniqueness, checkCloudNativeTagRuleNameUniqueness, checkLatestVersionMgmtAppExists, clearCloudNativeSqlServerBackupCredentials, cloudAccount, cloudDirectNasExport, cloudDirectSystems, cloudNativeCheckArchivedSnapshotsLocked, cloudNativeCheckRbaConnectivity, cloudNativeCheckRequiredPermissionsForFeature, cloudNativeCustomerTags, cloudNativeDownloadFiles, cloudNativeLabelRules, cloudNativeRbaInstallers, cloudNativeSnapshotDetailsForRecovery, cloudNativeSnapshotTypeDetails, cloudNativeSnapshots, cloudNativeSqlServerSetupScript, cloudNativeTagRules, cloudNativeWorkloadVersionedFiles, cluster, clusterCertificates, clusterConnection, clusterCsr, clusterDefaultGateway, clusterDns, clusterFloatingIps, clusterGroupByConnection, clusterIpmi, clusterIpv6Mode, clusterNetworkInterfaces, clusterNodes, clusterNtpServers, clusterOperationJobProgress, clusterProxy, clusterRegistrationProductInfo, clusterReportMigrationCount, clusterReportMigrationJobStatus, clusterReportMigrationStatus, clusterRoutes, clusterSlaDomains, clusterTypeList, clusterVlans, clusterWebSignedCertificate, clusterWithUpgradesInfo, completeAzureAdAppSetup, completeAzureAdAppUpdate, completeAzureCloudAccountOauth, computeClusterStatus, configureDb2Restore, configureSapHanaRestore, configuredGroupMembers, countOfObjectsProtectedBySlas, crawl, crawls, createActiveDirectoryLiveMount, createActiveDirectoryUnmount, createAutomaticAwsTargetMapping, createAutomaticAzureTargetMapping, createAutomaticRcsTargetMapping, createAwsAccount, createAwsCluster, createAwsComputeSetting, createAwsExocomputeConfigs, createAwsReaderTarget, createAwsTarget, createAzureAccount, createAzureCluster, createAzureReaderTarget, createAzureSaasAppAad, createAzureTarget, createCassandraSource, createCloudNativeAwsStorageSetting, createCloudNativeAzureStorageSetting, createCloudNativeLabelRule, createCloudNativeRcvAzureStorageSetting, createCloudNativeTagRule, createCrossAccountPair, createCrossAccountRegOauthPayload, createCustomAnalyzer, createCustomReport, createDomainControllerSnapshot, createDownloadSnapshotForVolumeGroup, createEventDigestBatch, createExchangeMount, createFailoverCluster, createFailoverClusterApp, createFilesetSnapshot, createGcpReaderTarget, createGcpTarget, createGlacierReaderTarget, createGlobalSla, createGuestCredential, createHypervVirtualMachineSnapshotDiskMount, createHypervVirtualMachineSnapshotMount, createIntegration, createIntegrations, createK8sAgentManifest, createK8sCluster, createK8sNamespaceSnapshots, createK8sProtectionSetSnapshot, createLegalHold, createManualTargetMapping, createMongodbSource, createMssqlLiveMount, createMssqlLogShippingConfiguration, createNfsReaderTarget, createNfsTarget, createNutanixCluster, createNutanixPrismCentral, createO365AppComplete, createO365AppKickoff, createOnDemandDb2Backup, createOnDemandExchangeBackup, createOnDemandMssqlBackup, createOnDemandNutanixBackup, createOnDemandSapHanaBackup, createOnDemandSapHanaStorageSnapshot, createOnDemandVolumeGroupBackup, createOraclePdbRestore, createOrg, createOrgSwitchSession, createPolicy, createRcsReaderTarget, createRcsTarget, createRcvLocationsFromTemplate, createRcvPrivateEndpointApprovalRequest, createReplicationPair, createRole, createS3CompatibleReaderTarget, createS3CompatibleTarget, createSapHanaSystemRefresh, createScheduledReport, createServiceAccount, createTapeReaderTarget, createTapeTarget, createUser, createUserWithPassword, createVappsInstantRecovery, createVsphereAdvancedTag, createVsphereVcenter, createWebhook, crossAccountPairs, currentIpAddress, currentOrg, currentOrgAuthDomainConfig, currentUser, currentUserLoginContext, customAnalyzer, dashboardSummary, databaseLogReportForCluster, databaseLogReportingPropertiesForCluster, datagovSecDesc, db2Database, db2DatabaseJobStatus, db2Databases, db2Instance, db2Instances, db2LogSnapshot, db2LogSnapshots, db2RecoverableRange, db2RecoverableRanges, deactivateCustomAnalyzer, deactivatePolicy, decryptExportUrl, deleteAdGroupsFromHierarchy, deleteAllOracleDatabaseSnapshots, deleteAwsComputeSetting, deleteAwsExocomputeConfigs, deleteAzureAdDirectory, deleteAzureCloudAccount, deleteAzureCloudAccountExocomputeConfigurations, deleteAzureCloudAccountWithoutOauth, deleteCassandraSource, deleteCertificate, deleteCloudNativeLabelRule, deleteCloudNativeTagRule, deleteCloudWorkloadSnapshot, deleteClusterRoute, deleteCrossAccountPair, deleteCsr, deleteCustomReport, deleteDb2Database, deleteDb2Instance, deleteDistributionListDigestBatch, deleteEventDigest, deleteExchangeSnapshotMount, deleteFailoverCluster, deleteFailoverClusterApp, deleteFilesetSnapshots, deleteGlobalCertificate, deleteGlobalSla, deleteGuestCredentialById, deleteHypervVirtualMachineSnapshot, deleteHypervVirtualMachineSnapshotMount, deleteIntegration, deleteIntegrations, deleteIntelFeed, deleteK8sCluster, deleteK8sProtectionSet, deleteLdapPrincipals, deleteLogShipping, deleteManagedVolume, deleteManagedVolumeSnapshotExport, deleteMongoSource, deleteMongodbSource, deleteMosaicStore, deleteMssqlDbSnapshots, deleteMssqlLiveMount, deleteNasSystem, deleteNutanixCluster, deleteNutanixMountV1, deleteNutanixPrismCentral, deleteNutanixSnapshot, deleteNutanixSnapshots, deleteO365AzureApp, deleteO365Org, deleteO365ServiceAccount, deleteOracleMount, deleteOrg, deleteReplicationPair, deleteRole, deleteSapHanaDbSnapshot, deleteSapHanaSystem, deleteScheduledReport, deleteServiceAccountsFromAccount, deleteSmbDomain, deleteSnapshotsOfUnmanagedObjects, deleteStorageArrays, deleteSyslogExportRule, deleteTarget, deleteTargetMapping, deleteTotpConfig, deleteTotpConfigs, deleteUnmanagedSnapshots, deleteUsersFromAccount, deleteVolumeGroupMount, deleteVsphereAdvancedTag, deleteVsphereLiveMount, deleteWebhook, deploymentVersion, deregisterPrivateContainerRegistry, diffFmd, disableReplicationPause, disableSupportUserAccess, disableTarget, disconnectAwsExocomputeCluster, discoverDb2Instance, discoverMongoSource, discoverNodes, discoveryTimeline, dissolveLegalHold, distributionListDigest, doesAzureNativeResourceGroupExist, downloadActiveDirectorySnapshotFromLocation, downloadAuditLogCsvAsync, downloadCdmUpgradesPdf, downloadDb2Snapshot, downloadDb2SnapshotV2, downloadDb2SnapshotsForPointInTimeRecovery, downloadExchangeSnapshot, downloadExchangeSnapshotV2, downloadFilesNutanixSnapshot, downloadFilesetSnapshot, downloadFilesetSnapshotFromLocation, downloadFromArchiveV2, downloadHypervSnapshotFromLocation, downloadHypervVirtualMachineLevelFiles, downloadHypervVirtualMachineSnapshot, downloadHypervVirtualMachineSnapshotFiles, downloadManagedVolumeFiles, downloadManagedVolumeFromLocation, downloadMssqlDatabaseBackupFiles, downloadMssqlDatabaseFilesFromArchivalLocation, downloadNutanixSnapshot, downloadNutanixVdisks, downloadNutanixVmFromLocation, downloadObjectFilesCsv, downloadObjectsListCsv, downloadOracleDatabaseSnapshot, downloadOracleSnapshotFromLocation, downloadOracleSnapshotFromLocationV2, downloadPackageStatus, downloadReportCsvAsync, downloadReportPdfAsync, downloadResultsCsv, downloadSapHanaSnapshot, downloadSapHanaSnapshotFromLocation, downloadSapHanaSnapshotsForPointInTimeRecovery, downloadSlaWithReplicationCsv, downloadSnapshotResultsCsv, downloadThreatHuntCsv, downloadUserActivityCsv, downloadUserFileActivityCsv, downloadVolumeGroupSnapshotFiles, downloadVolumeGroupSnapshotFromLocation, downloadVsphereVirtualMachineFiles, downloadedVersionList, dummyFieldWithAdminOnlyTag, edgeWindowsToolLink, enableAutomaticFmdUpload, enableDisableAppConsistency, enableO365SharePoint, enableO365Teams, enableReplicationPause, enableSupportUserAccess, enableTarget, enableThreatMonitoring, endManagedVolumeSnapshot, exchangeDag, exchangeDags, exchangeDatabase, exchangeDatabases, exchangeLiveMounts, exchangeServer, exchangeServers, excludeAwsNativeEbsVolumesFromSnapshot, excludeAzureNativeManagedDisksFromSnapshot, excludeSharepointObjectsFromProtection, excludeVmDisks, expireDownloadedDb2Snapshots, expireDownloadedSapHanaSnapshots, expireSnoozedDirectories, exportHypervVirtualMachine, exportK8sNamespace, exportK8sProtectionSetSnapshot, exportManagedVolumeSnapshot, exportMssqlDatabase, exportNutanixSnapshot, exportO365Mailbox, exportO365MailboxV2, exportOracleDatabase, exportOracleTablespace, exportSlaManagedVolumeSnapshot, externalDeploymentName, failedRestoreItemsInfo, failoverClusterApp, failoverClusterApps, failoverClusterTopLevelDescendants, federatedLoginStatus, filesetDownloadSnapshotFiles, filesetExportSnapshotFiles, filesetRecoverFiles, filesetRequestStatus, filesetSnapshot, filesetSnapshotFiles, filesetTemplate, filesetTemplates, finalizeAwsCloudAccountDeletion, finalizeAwsCloudAccountProtection, gcpCloudAccountAddManualAuthProject, gcpCloudAccountAddProjects, gcpCloudAccountDeleteProjects, gcpCloudAccountOauthComplete, gcpCloudAccountOauthInitiate, gcpCloudAccountUpgradeProjects, gcpGetDefaultCredentialsServiceAccount, gcpNativeDisableProject, gcpNativeDisk, gcpNativeDisks, gcpNativeExcludeDisksFromInstanceSnapshot, gcpNativeExportDisk, gcpNativeExportGceInstance, gcpNativeGceInstance, gcpNativeGceInstances, gcpNativeProject, gcpNativeProjects, gcpNativeRefreshProjects, gcpNativeRestoreGceInstance, gcpNativeStoredDiskLocations, gcpSetDefaultServiceAccountJwtConfig, generateClusterRegistrationToken, generateConfigProtectionRestoreForm, generateCsr, generateSupportBundle, generateTotpSecret, geoLocationList, getAllRolesInOrgConnection, getCdmReleaseDetailsForClusterFromSupportPortal, getCdmReleaseDetailsForVersionFromSupportPortal, getCdmReleaseDetailsFromSupportPortal, getDownloadUrl, getGroupCountByCdmClusterStatus, getGroupCountByPrechecksStatus, getGroupCountByUpgradeJobStatus, getGroupCountByVersionStatus, getHealthMonitorPolicyStatus, getKorgTaskchainStatus, getPendingSlaAssignments, getPermissions, getRolesByIds, getUserDownloads, globalCertificate, globalCertificates, globalFileSearch, globalLockoutConfig, globalMfaSetting, globalSearchResults, globalSlaFilterConnection, globalSlaStatuses, groupsInCurrentAndDescendantOrganization, guestCredentials, guestCredentialsV2, hasIdpConfigured, hasRelicAzureAdSnapshot, helpContentSnippets, hideRevealNasNamespaces, hideRevealNasShares, hierarchyObject, hierarchyObjectRecoveryTarget, hierarchyObjects, hierarchySnappables, hostDiagnosis, hostFailoverCluster, hostFailoverClusters, hostShare, hostShares, hypervCluster, hypervDeleteAllSnapshots, hypervHostAsyncRequestStatus, hypervMounts, hypervOnDemandSnapshot, hypervScvmm, hypervScvmmAsyncRequestStatus, hypervScvmmDelete, hypervScvmmUpdate, hypervScvmms, hypervServer, hypervServers, hypervServersPaginated, hypervTopLevelDescendants, hypervVirtualMachine, hypervVirtualMachineAsyncRequestStatus, hypervVirtualMachineLevelFileInfo, hypervVirtualMachines, hypervVmDetail, inplaceExportHypervVirtualMachine, insertCustomerO365App, installIoFilter, installedVersionList, instantRecoverHypervVirtualMachineSnapshot, instantRecoverOracleSnapshot, integration, inventoryRoot, inventorySubHierarchyRoot, investigationCsvDownloadLink, inviteSsoGroup, ipWhitelist, isAwsNativeEbsVolumeSnapshotRestorable, isAwsNativeRdsInstanceLaunchConfigurationValid, isAwsS3BucketNameAvailable, isAzureNativeManagedDiskSnapshotRestorable, isAzureNativeSqlDatabaseSnapshotPersistent, isAzureStorageAccountNameAvailable, isCloudNativeFileRecoveryFeasible, isIpmiEnabled, isLoggedIntoRubrikSupportPortal, isOrgServiceAccountDisabled, isReplaceNodeTprConfigured, isSfdcReachable, isTotpAckNecessaryForCluster, isTotpMandatoryInTargetVersion, isTriggerRcvGrsTprConfigured, isUpgradeAvailable, isUpgradeRecommended, isVMwareManagementEnabled, isZrsAvailableForLocation, issue, issues, jobInfo, joinSmbDomain, k8sAppManifest, k8sCluster, k8sClusters, k8sNamespace, k8sNamespaces, k8sProtectionSetSnapshots, k8sSnapshotInfo, knowledgeBaseArticle, kubernetesCluster, kubernetesClusters, kubernetesProtectionSet, kubernetesProtectionSets, lambdaSettings, ldapAuthorizedPrincipalConnection, ldapIntegrationConnection, ldapPrincipalConnection, legalHoldSnapshotsForSnappable, licensesForClusterProductSummary, linuxFileset, listCidrsForComputeSetting, listO365Apps, lockUsersByAdmin, lockoutConfig, logoutFromRubrikSupportPortal, lookupAccount, m365DayToDayModeBackupStats, m365DayToDayModeStats, m365DirectoryObjectAttributes, m365LicenseEntitlement, m365OnboardingModeBackupStats, m365OnboardingModeStats, m365OrgBackupLocations, m365OrgOperationModes, m365Regions, makePrimary, manageProtectionForLinkedObjects, managedVolume, managedVolumeInventoryStats, managedVolumeLiveMounts, managedVolumes, mapAzureCloudAccountExocomputeSubscription, mapAzureCloudAccountToPersistentStorageLocation, mapCloudAccountExocomputeAccount, markAgentSecondaryCertificate, maxProtectedAppsCount, mfaSetting, migrateCloudClusterDisks, migrateNutanixMountV1, minimumCdmVersionForFeatureSet, modifyActiveDirectoryLiveMount, modifyEventDigestBatch, modifyIpmi, mongoBulkRecoverableRanges, mongoCollection, mongoCollections, mongoDatabase, mongoDatabases, mongoRecoverableRanges, mongoSource, mongoSources, mongodbBulkRecoverableRange, mongodbCollection, mongodbCollectionRecoverableRange, mongodbCollections, mongodbDatabase, mongodbDatabases, mongodbSource, mongodbSources, mosaicBulkRecoveryRange, mosaicSnapshots, mosaicStores, mosaicVersions, mountDisk, mountNutanixSnapshotV1, mountNutanixVdisks, mountOracleDatabase, mssqlAvailabilityGroup, mssqlAvailabilityGroupDatabaseVirtualGroups, mssqlAvailabilityGroupVirtualGroups, mssqlCompatibleInstances, mssqlDatabase, mssqlDatabaseLiveMounts, mssqlDatabaseMissedRecoverableRanges, mssqlDatabaseMissedSnapshots, mssqlDatabaseRestoreEstimate, mssqlDatabases, mssqlDefaultProperties, mssqlDefaultPropertiesOnCluster, mssqlInstance, mssqlJobStatus, mssqlLogShippingTargets, mssqlRecoverableRanges, mssqlTopLevelDescendants, mutateRole, nasFileset, nasNamespace, nasNamespaces, nasShare, nasSystem, nasSystems, nasTopLevelDescendants, nasVolume, ncdBackEndCapacity, ncdFrontEndCapacity, ncdObjectProtectionStatus, ncdVmImageUrl, networkThrottle, nfAnomalyResults, nfAnomalyResultsGrouped, nodeRemovalCancelPermission, nodeToReplace, nodeTunnelStatuses, notificationForGetLicense, nutanixBrowseSnapshot, nutanixCategory, nutanixCategoryValue, nutanixCluster, nutanixClusterAsyncRequestStatus, nutanixClusterContainers, nutanixClusterNetworks, nutanixClusters, nutanixMounts, nutanixPrismCentral, nutanixPrismCentrals, nutanixSnapshotDetail, nutanixSnapshotVdisks, nutanixTopLevelDescendants, nutanixVm, nutanixVmAsyncRequestStatus, nutanixVmMissedSnapshots, nutanixVms, o365Calendar, o365Consumption, o365Groups, o365License, o365Mailbox, o365Mailboxes, o365OauthConsentComplete, o365OauthConsentKickoff, o365ObjectAncestors, o365Onedrive, o365Onedrives, o365Org, o365OrgAtSnappableLevel, o365OrgSummaries, o365Orgs, o365PdlGroups, o365SaaSSetupKickoff, o365SaasSetupComplete, o365ServiceAccount, o365ServiceStatus, o365SetupKickoff, o365SharepointDrive, o365SharepointDrives, o365SharepointList, o365SharepointLists, o365SharepointObjectList, o365SharepointObjects, o365SharepointObjectsNew, o365SharepointSite, o365SharepointSites, o365Site, o365Sites, o365StorageStats, o365Team, o365TeamChannels, o365TeamConversationsFolderID, o365TeamPostedBy, o365Teams, o365User, o365UserObjects, oauthCodesForEdgeReg, objectFiles, objectTypeAccessSummary, oracleAcoExampleDownloadLink, oracleAcoParameters, oracleDataGuardGroup, oracleDatabase, oracleDatabaseAsyncRequestDetails, oracleDatabaseLogBackupConfig, oracleDatabases, oracleHost, oracleHostLogBackupConfig, oracleLiveMounts, oracleMissedRecoverableRanges, oracleMissedSnapshots, oraclePdbDetails, oracleRac, oracleRacLogBackupConfig, oracleRecoverableRanges, oracleTopLevelDescendants, org, orgSecurityPolicy, orgs, orgsForPrincipal, overallRansomwareInvestigationSummary, passkeyConfig, passkeyInfo, passwordComplexityPolicy, patchAwsAuthenticationServerBasedCloudAccount, patchAwsIamUserBasedCloudAccount, patchDb2Database, patchDb2Instance, patchMongoSource, patchNutanixMountV1, patchSapHanaSystem, pauseSla, pauseTarget, pendingAction, phoenixRolloutProgress, physicalHost, physicalHosts, pipelineHealthForTimeRange, polarisInventorySubHierarchyRoot, polarisSnapshot, policies, policy, policyDetails, policyObj, policyObjectUsages, policyObjs, prechecksStatus, prechecksStatusWithNextJobInfo, prepareAwsCloudAccountDeletion, prepareFeatureUpdateForAwsCloudAccount, privateContainerRegistry, processedRansomwareInvestigationWorkloadCount, productDocumentation, promoteReaderTarget, protectedObjectsConnection, protectedVolumesCount, putSmbConfiguration, queryDatastoreFreespaceThresholds, radarClusterConnection, ransomwareDetectionWorkloadLocations, ransomwareInvestigationAnalysisSummary, ransomwareInvestigationEnablement, ransomwareResult, ransomwareResultOpt, ransomwareResults, ransomwareResultsGrouped, rcsArchivalLocationsConsumptionStats, rcvAccountEntitlement, rdsInstanceDetailsFromAws, recoverCassandraSource, recoverCloudCluster, recoverCloudDirectMultiPaths, recoverCloudDirectPath, recoverMongoSource, recoverMongodbSource, refreshDb2Database, refreshDomain, refreshGlobalManagerConnectivityStatus, refreshHost, refreshHypervScvmm, refreshHypervServer, refreshK8sCluster, refreshK8sV2Cluster, refreshNasSystems, refreshNutanixCluster, refreshNutanixPrismCentral, refreshO365Org, refreshOracleDatabase, refreshReaderTarget, refreshStorageArrays, refreshVsphereVcenter, registerAgentHypervVirtualMachine, registerAgentNutanixVm, registerAwsFeatureArtifacts, registerCloudCluster, registerHypervScvmm, registerNasSystem, releasePersistentExoclusters, removeCdmCluster, removeClusterNodes, removeDisk, removeInventoryWorkloads, removeLdapIntegration, removePolicyObjects, removePrivateEndpointConnection, removeProxyConfig, removeVlans, removedNodeDetails, replicationIncomingStats, replicationNetworkThrottleBypass, replicationNetworkThrottleBypassById, replicationOutgoingStats, replicationPairs, reportData, requestPersistentExocluster, reseedLogShippingSecondary, resetAllOrgUsersPasswords, resetUsersPasswordsWithUserIds, resizeDisk, resizeManagedVolume, resolveAnomaly, resolveVolumeGroupsConflict, restoreActiveDirectoryObjects, restoreAzureAdObjectsWithPasswords, restoreDomainControllerSnapshot, restoreFilesNutanixSnapshot, restoreHypervVirtualMachineSnapshotFiles, restoreK8sNamespace, restoreK8sProtectionSetSnapshot, restoreMssqlDatabase, restoreO365Mailbox, restoreO365MailboxV2, restoreO365Snappable, restoreO365TeamsConversations, restoreO365TeamsFiles, restoreOracleLogs, restoreSapHanaSystemStorage, restoreVolumeGroupSnapshotFiles, resumeTarget, retryAddMongoSource, retryBackup, retryDownloadPackageJob, revokeAllOrgRoles, roleTemplates, rotateServiceAccountSecret, runCustomAnalyzer, s3BucketStateForRecovery, sapHanaDatabase, sapHanaDatabases, sapHanaLogSnapshot, sapHanaLogSnapshots, sapHanaRecoverableRange, sapHanaRecoverableRanges, sapHanaSystem, sapHanaSystems, scheduleUpgradeBatchJob, scheduledReport, scheduledReports, searchAzureAdSnapshot, searchFileByPrefix, searchHost, searchNutanixVm, searchSnappableConnection, searchSnappableVersionedFiles, seedEnabledPolicies, seedInitialPolicies, sendPdfReport, sendScheduledReportAsync, serviceAccounts, setAnalyzerRisks, setAzureCloudAccountCustomerAppCredentials, setBundleApprovalStatus, setCustomerTags, setDatastoreFreespaceThresholds, setIpWhitelistEnabled, setLdapMfaSetting, setMfaSetting, setMissingClusterStatus, setO365ServiceAccount, setPasswordComplexityPolicy, setPrivateContainerRegistry, setSsoCertificate, setTotpConfig, setUpgradeType, setUserLevelTotpEnforcement, setWebSignedCertificate, setWorkloadAlertSetting, setupAzureO365Exocompute, setupCloudNativeSqlServerBackup, setupDisk, shareFileset, sharepointSiteDescendants, sharepointSiteSearch, slaAuditDetail, slaConflictObjects, slaDomain, slaDomains, slaManagedVolume, slaManagedVolumes, smbConfiguration, smbDomains, snappableConnection, snappableContactSearch, snappableEmailSearch, snappableEventSearch, snappableGroupByConnection, snappableOnedriveSearch, snappableSharepointDriveSearch, snappableSharepointListSearch, snappableTeamsConversationsSearch, snappableTeamsDriveSearch, snappablesWithLegalHoldSnapshotsSummary, snapshot, snapshotEmailSearch, snapshotEventSearch, snapshotFilesDelta, snapshotFilesDeltaV2, snapshotOfASnappableConnection, snapshotOfSnappablesConnection, snapshotOnedriveSearch, snapshotResults, snapshotSharepointDriveSearch, snapshotsForUnmanagedObject, snmpConfigurations, snoozedDirectories, sonarContentReport, sonarReport, sonarReportRow, sonarUserGroups, sonarUsers, startAwsExocomputeDisableJob, startAwsNativeAccountDisableJob, startAwsNativeEc2InstanceSnapshotsJob, startAwsNativeRdsInstanceSnapshotsJob, startAzureAdAppSetup, startAzureAdAppUpdate, startAzureCloudAccountOauth, startCloudNativeSnapshotsIndexJob, startClusterReportMigrationJob, startCrawl, startCreateAwsNativeEbsVolumeSnapshotsJob, startCreateAzureNativeManagedDiskSnapshotsJob, startCreateAzureNativeVirtualMachineSnapshotsJob, startDisableAzureCloudAccountJob, startDisableAzureNativeSubscriptionProtectionJob, startDownloadPackageBatchJob, startEc2InstanceSnapshotExportJob, startExportAwsNativeEbsVolumeSnapshotJob, startExportAzureNativeManagedDiskJob, startExportAzureNativeVirtualMachineJob, startExportAzureSqlDatabaseDbJob, startExportAzureSqlManagedInstanceDbJob, startExportRdsInstanceJob, startPeriodicUpgradePrechecksOnDemandJob, startRecoverS3SnapshotJob, startRefreshAwsNativeAccountsJob, startRefreshAzureNativeSubscriptionsJob, startRestoreAwsNativeEc2InstanceSnapshotJob, startRestoreAzureNativeVirtualMachineJob, startThreatHunt, startUpgradeBatchJob, startVolumeGroupMount, stopJobInstance, stopJobInstanceFromEventSeries, supportBundle, supportPortalLogin, supportUserAccesses, switchProductToOnboardingMode, syslogExportRules, tableFilters, takeManagedVolumeOnDemandSnapshot, takeMssqlLogBackup, takeOnDemandOracleDatabaseSnapshot, takeOnDemandOracleLogSnapshot, takeOnDemandSnapshot, target, targetMapping, targets, taskDetailConnection, taskDetailGroupByConnection, taskchain, teamChannelNameAvailable, testExistingWebhook, testSyslogExportRule, testWebhook, threatHuntDetail, threatHuntResult, threatHuntSummary, threatHunts, totpConfigStatus, tprStatusForNodeRemoval, triggerCloudComputeConnectivityCheck, triggerExocomputeHealthCheck, triggerRansomwareDetection, tunnelStatus, unconfigureSapHanaRestore, uninstallIoFilter, uniqueHypervServersCount, uniqueVcdCount, unlockUsersByAdmin, unmanagedObjects, unmapAzureCloudAccountExocomputeSubscription, unmapAzurePersistentStorageSubscription, unmapCloudAccountExocomputeAccount, unmountDisk, updateAccountOwner, updateAdGroup, updateAgentDeploymentSetting, updateAgentDeploymentSettingInBatch, updateAuthDomainUsersHiddenStatus, updateAutoEnablePolicyClusterConfig, updateAutomaticAwsTargetMapping, updateAutomaticAzureTargetMapping, updateAwsAccount, updateAwsCloudAccount, updateAwsCloudAccountFeature, updateAwsComputeSetting, updateAwsExocomputeConfigs, updateAwsTarget, updateAzureAccount, updateAzureCloudAccount, updateAzureTarget, updateBackupThrottleSetting, updateBadDiskLedStatus, updateCassandraSource, updateCertificate, updateCertificateHost, updateCloudNativeAwsStorageSetting, updateCloudNativeAzureStorageSetting, updateCloudNativeIndexingStatus, updateCloudNativeLabelRule, updateCloudNativeRcvAzureStorageSetting, updateCloudNativeTagRule, updateClusterDefaultAddress, updateClusterLocation, updateClusterNtpServers, updateClusterPauseStatus, updateClusterSettings, updateConfiguredGroup, updateCustomAnalyzer, updateCustomIntelFeed, updateCustomReport, updateCustomerAppPermissionForAzureSql, updateCustomerAppPermissions, updateDatabaseLogReportingPropertiesForCluster, updateDistributionListDigest, updateDnsServersAndSearchDomains, updateEventDigest, updateFailoverCluster, updateFailoverClusterApp, updateFloatingIps, updateGcpTarget, updateGlacierTarget, updateGlobalCertificate, updateGlobalSla, updateGuestCredential, updateHealthMonitorPolicyStatus, updateHypervVirtualMachine, updateHypervVirtualMachineSnapshotMount, updateInsightState, updateIntegration, updateIntegrations, updateIocStatus, updateIpWhitelist, updateK8sCluster, updateK8sProtectionSet, updateLambdaSettings, updateLdapIntegration, updateLockoutConfig, updateManagedIdentities, updateManagedVolume, updateManualTargetMapping, updateMongodbSource, updateMosaicStore, updateMssqlDefaultProperties, updateMssqlLogShippingConfiguration, updateMssqlLogShippingConfigurationV1, updateNasShares, updateNasSystem, updateNetworkThrottle, updateNfsTarget, updateNutanixCluster, updateNutanixPrismCentral, updateNutanixVm, updateO365AppAuthStatus, updateO365AppPermissions, updateO365OrgCustomName, updateOracleDataGuardGroup, updateOrg, updateOrgSecurityPolicy, updatePolicy, updatePreviewerClusterConfig, updateProxyConfig, updateRcsAutomaticTargetMapping, updateRcvTarget, updateReplicationNetworkThrottleBypass, updateReplicationTarget, updateRole, updateRoleAssignments, updateS3CompatibleTarget, updateScheduledReport, updateServiceAccount, updateSnmpConfig, updateStorageArrays, updateSupportUserAccess, updateSyslogExportRule, updateTapeTarget, updateTunnelStatus, updateVcenter, updateVcenterHotAddBandwidth, updateVcenterHotAddNetwork, updateVcenterV2, updateVlan, updateVolumeGroup, updateVsphereAdvancedTag, updateVsphereVm, updateVsphereVmNew, updateWebhook, updateWhitelistedAnalyzers, upgradeAwsCloudAccountFeaturesWithoutCft, upgradeAwsIamUserBasedCloudAccountPermissions, upgradeAzureCloudAccount, upgradeAzureCloudAccountPermissionsWithoutOauth, upgradeCdmManagedTarget, upgradeGcpCloudAccountPermissionsWithoutOauth, upgradeIoFilter, upgradeSlas, upgradeStatus, upgradeToRsc, uploadDatabaseSnapshotToBlobstore, userActivities, userActivityTimeline, userAnalyzerAccess, userAuditConnection, userDetail, userFile, userFileActivityTimeline, userGroups, userNotifications, userSessionManagementConfig, userSettings, usersInCurrentAndDescendantOrganization, vCenterAdvancedTagPreview, vCenterHotAddBandwidth, vCenterHotAddNetwork, vCenterHotAddProxyVmsV2, vCenterNetworks, vCenterNumProxiesNeeded, vCenterPreAddInfo, vDiskMountableNutanixVms, vSphereComputeCluster, vSphereComputeClusters, vSphereDatacenter, vSphereDatastore, vSphereDatastoreCluster, vSphereDatastoreClusters, vSphereDatastoreConnection, vSphereFolder, vSphereFolders, vSphereHost, vSphereHostConnection, vSphereHostDetails, vSphereHostsByFids, vSphereLiveMounts, vSphereMount, vSphereMountConnection, vSphereNetwork, vSphereResourcePool, vSphereRootRecoveryHierarchy, vSphereTag, vSphereTagCategory, vSphereTopLevelDescendantsConnection, vSphereVCenter, vSphereVCenterConnection, vSphereVMAsyncRequestStatus, vSphereVmNew, vSphereVmNewConnection, validateAndCreateAwsCloudAccount, validateAndInitiateAwsOutpostAccount, validateAndSaveCustomerKmsInfo, validateAwsNativeRdsClusterNameForExport, validateAwsNativeRdsInstanceNameForExport, validateAzureCloudAccountExocomputeConfigurations, validateAzureNativeSqlDatabaseDbNameForExport, validateAzureNativeSqlManagedInstanceDbNameForExport, validateClusterLicenseCapacity, validateCreateAwsClusterInput, validateCreateAzureClusterInput, validateOracleAcoFile, validateOracleDatabaseBackups, validateOrgName, vappSnapshotInstantRecoveryOptions, vappTemplateSnapshotExportOptions, vcdVappVms, vcenterAsyncRequestStatus, verifySlaWithReplicationToCluster, verifyTotp, vmMakePrimary, vmwareDownloadSnapshotFromLocation, vmwareMissedRecoverableRanges, vmwareRecoverableRanges, volumeGroupMounts, vsphereBulkOnDemandSnapshot, vsphereDeleteVcenter, vsphereExcludeVmDisks, vsphereExportSnapshotToStandaloneHostV2, vsphereOnDemandSnapshot, vsphereSnapshotDownloadFilesFromLocation, vsphereSnapshotRestoreFilesFromLocation, vsphereVMMissedRecoverableRange, vsphereVMRecoverableRange, vsphereVMRecoverableRangeInBatch, vsphereVmBatchExport, vsphereVmBatchExportV3, vsphereVmBatchInPlaceRecovery, vsphereVmDeleteSnapshot, vsphereVmDownloadSnapshot, vsphereVmDownloadSnapshotFiles, vsphereVmExportSnapshotV2, vsphereVmExportSnapshotV3, vsphereVmExportSnapshotWithDownloadFromCloud, vsphereVmInitiateBatchInstantRecovery, vsphereVmInitiateBatchLiveMountV2, vsphereVmInitiateDiskMount, vsphereVmInitiateInPlaceRecovery, vsphereVmInitiateInstantRecoveryV2, vsphereVmInitiateLiveMountV2, vsphereVmListEsxiDatastores, vsphereVmMountRelocate, vsphereVmMountRelocateV2, vsphereVmPowerOnOffLiveMount, vsphereVmRecoverFiles, vsphereVmRecoverFilesNew, vsphereVmRegisterAgent, vsphereVmRegisterAgentWithOrg, vsphereVmUpdateUnmountTime, vsphereVmwareCdpLiveInfo, warmSearchCache, windowsCluster, windowsFileset, workloadAlertSetting, workloadAnomalies, workloadForeverId</maml:para>
          <maml:para>Required: False Position: 0 Default value: None Accept pipeline input: True (ByValue) Accept wildcard characters: False ```</maml:para>
          <maml:para>### -Locations Info about the various locations the SDK uses </maml:para>
          <maml:para>```yaml Type: SwitchParameter Parameter Sets: Locations Aliases:</maml:para>
          <maml:para>Required: False Position: 1 Default value: None Accept pipeline input: True (ByValue) Accept wildcard characters: False ```</maml:para>
          <maml:para>### -ProgressAction {{ Fill ProgressAction Description }}</maml:para>
          <maml:para>```yaml Type: ActionPreference Parameter Sets: (All) Aliases: proga</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### CommonParameters This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).</maml:para>
          <maml:para>## INPUTS</maml:para>
          <maml:para>### RubrikSecurityCloud.Types.SchemaMeta+GqlRootFieldName</maml:para>
          <maml:para>### System.String</maml:para>
          <maml:para>### System.Management.Automation.SwitchParameter</maml:para>
          <maml:para>## OUTPUTS</maml:para>
          <maml:para>### System.Object ## NOTES</maml:para>
          <maml:para>## RELATED LINKS</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false"></command:parameterValue>
        <dev:type>
          <maml:name></maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS&gt; Get-RscCmdlet clusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Retrieve the name of the cmdlet that implements the GraphQL query clusterConnection</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS&gt; Get-RscCmdlet notImplementedOperation</dev:code>
        <dev:remarks>
          <maml:para>Retrieve info for a GraphQL operation that is not implemented by a cmdlet.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Get-RscFileset</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscFileset</command:noun>
      <maml:description>
        <maml:para>Retrieve one or more filsets managed by Rubrik Security Cloud (Rsc).</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>The Get-RscFileset cmdlet is used to get one or more filesets known to RSC. The -FilesetId parameter will return a single fileset. All other parameters will return a list of matching filesets. When -FilesetId is NOT specified, -HostId is required. -HostId can accept a value from the pipeline</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-RscFileset</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>FilesetId</maml:name>
          <maml:description>
            <maml:para>Get a fileset using its ID</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Get-RscFileset</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="0" aliases="Id">
          <maml:name>HostId</maml:name>
          <maml:description>
            <maml:para>The Id of the Physical Host to get filesets for</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
          <maml:name>Name</maml:name>
          <maml:description>
            <maml:para>Filter results by name</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
          <maml:name>First</maml:name>
          <maml:description>
            <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
          <dev:type>
            <maml:name>Int32</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
          <maml:name>SortBy</maml:name>
          <maml:description>
            <maml:para>Sort by field name</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">NAME</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ID</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="4" aliases="none">
          <maml:name>SortOrder</maml:name>
          <maml:description>
            <maml:para>Sort Order</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ASC</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DESC</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>FilesetId</maml:name>
        <maml:description>
          <maml:para>Get a fileset using its ID</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
        <maml:name>First</maml:name>
        <maml:description>
          <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
        <dev:type>
          <maml:name>Int32</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="0" aliases="Id">
        <maml:name>HostId</maml:name>
        <maml:description>
          <maml:para>The Id of the Physical Host to get filesets for</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
        <maml:name>Name</maml:name>
        <maml:description>
          <maml:para>Filter results by name</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
        <maml:name>SortBy</maml:name>
        <maml:description>
          <maml:para>Sort by field name</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="4" aliases="none">
        <maml:name>SortOrder</maml:name>
        <maml:description>
          <maml:para>Sort Order</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>Get-RscFileset -HostId xxxxx-xxxxx-xxxxx-xxxxx</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all filesets on a specified host</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>Get-RscFileset -HostId xxxxx-xxxxx-xxxxx-xxxxx -Name etc</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all filesets on a specified host, filtered by name</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>Get-RscHost -OsType Linux -First 1 | Get-RscFileset</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all filesets on a host, providing the host via the pipeline</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Get-RscFilesetTemplate</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscFilesetTemplate</command:noun>
      <maml:description>
        <maml:para>Retrieve one or more filset templates managed by Rubrik Security Cloud (Rsc).</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>The Get-RscFileset cmdlet is used to get one or more fileset templates known to RSC. The -Id parameter will return a template. All other parameters will return a list of matching templates. Returns Windows and Linux fileset templates.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-RscFilesetTemplate</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Activate selected fields based on not-null properties of the input fields object</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">FilesetTemplate</command:parameterValue>
          <dev:type>
            <maml:name>FilesetTemplate</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>OsType</maml:name>
          <maml:description>
            <maml:para>Operating system type of fileset templates to return. Valid values are: "Windows" and "Linux".</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
          <maml:name>Name</maml:name>
          <maml:description>
            <maml:para>Filter results by name</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
          <maml:name>First</maml:name>
          <maml:description>
            <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
          <dev:type>
            <maml:name>Int32</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
          <maml:name>SortBy</maml:name>
          <maml:description>
            <maml:para>Sort by field name</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">NAME</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ID</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PHYSICAL_HOST_OS_NAME</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="4" aliases="none">
          <maml:name>SortOrder</maml:name>
          <maml:description>
            <maml:para>Sort Order</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ASC</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DESC</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Get-RscFilesetTemplate</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Activate selected fields based on not-null properties of the input fields object</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">FilesetTemplate</command:parameterValue>
          <dev:type>
            <maml:name>FilesetTemplate</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Id</maml:name>
          <maml:description>
            <maml:para>Get a physical host using its ID</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Activate selected fields based on not-null properties of the input fields object</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">FilesetTemplate</command:parameterValue>
        <dev:type>
          <maml:name>FilesetTemplate</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
        <maml:name>First</maml:name>
        <maml:description>
          <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
        <dev:type>
          <maml:name>Int32</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>Id</maml:name>
        <maml:description>
          <maml:para>Get a physical host using its ID</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
        <maml:name>Name</maml:name>
        <maml:description>
          <maml:para>Filter results by name</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>OsType</maml:name>
        <maml:description>
          <maml:para>Operating system type of fileset templates to return. Valid values are: "Windows" and "Linux".</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
        <maml:name>SortBy</maml:name>
        <maml:description>
          <maml:para>Sort by field name</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="4" aliases="none">
        <maml:name>SortOrder</maml:name>
        <maml:description>
          <maml:para>Sort Order</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>None</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>Get-RscFilesetTemplate -OsType Linux</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all Linux fileset templates.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>Get-RscFilesetTemplate -OsType Windows -Name myWinTemplate</dev:code>
        <dev:remarks>
          <maml:para>Get a list of Windows fileset templates, matching a name pattern.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>Get-RscFilesetTemplate -Id 76254be7-baa4-5145-a4b7-a7a7773ad97d</dev:code>
        <dev:remarks>
          <maml:para>Get a template by Id, with default fields selected.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Get-RscHost</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscHost</command:noun>
      <maml:description>
        <maml:para>Retrieve one or more physical hosts managed by Rubrik Security Cloud (Rsc).</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>The Get-RscHost cmdlet is used to get one or more physical hosts known to RSC. The -Id parameter will return a single host. All other parameters will return a list of matching hosts.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-RscHost</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Activate selected fields based on not-null properties of the input fields object</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">PhysicalHost</command:parameterValue>
          <dev:type>
            <maml:name>PhysicalHost</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>OsType</maml:name>
          <maml:description>
            <maml:para>Operating system type of hosts to return. Valid values are "Windows" and "Linux".</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
          <maml:name>Name</maml:name>
          <maml:description>
            <maml:para>Filter results by name</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
          <maml:name>First</maml:name>
          <maml:description>
            <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
          <dev:type>
            <maml:name>Int32</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
          <maml:name>Relics</maml:name>
          <maml:description>
            <maml:para>Include only items that are relics</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Boolean</command:parameterValue>
          <dev:type>
            <maml:name>Boolean</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="4" aliases="none">
          <maml:name>Replicated</maml:name>
          <maml:description>
            <maml:para>Include only items that are replicated</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Boolean</command:parameterValue>
          <dev:type>
            <maml:name>Boolean</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="5" aliases="none">
          <maml:name>SortBy</maml:name>
          <maml:description>
            <maml:para>Sort by field name</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">NAME</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ID</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PHYSICAL_HOST_OS_NAME</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="6" aliases="none">
          <maml:name>SortOrder</maml:name>
          <maml:description>
            <maml:para>Sort Order</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ASC</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DESC</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="7" aliases="none">
          <maml:name>IsBulkPolicyAssignmentFlow</maml:name>
          <maml:description>
            <maml:para>Indicates whether request is bulk policy assignment flow.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Boolean</command:parameterValue>
          <dev:type>
            <maml:name>Boolean</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Get-RscHost</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Activate selected fields based on not-null properties of the input fields object</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">PhysicalHost</command:parameterValue>
          <dev:type>
            <maml:name>PhysicalHost</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Id</maml:name>
          <maml:description>
            <maml:para>Get a physical host using its ID</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Activate selected fields based on not-null properties of the input fields object</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">PhysicalHost</command:parameterValue>
        <dev:type>
          <maml:name>PhysicalHost</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
        <maml:name>First</maml:name>
        <maml:description>
          <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
        <dev:type>
          <maml:name>Int32</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>Id</maml:name>
        <maml:description>
          <maml:para>Get a physical host using its ID</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="7" aliases="none">
        <maml:name>IsBulkPolicyAssignmentFlow</maml:name>
        <maml:description>
          <maml:para>Indicates whether request is bulk policy assignment flow.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Boolean</command:parameterValue>
        <dev:type>
          <maml:name>Boolean</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
        <maml:name>Name</maml:name>
        <maml:description>
          <maml:para>Filter results by name</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>OsType</maml:name>
        <maml:description>
          <maml:para>Operating system type of hosts to return. Valid values are "Windows" and "Linux".</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
        <maml:name>Relics</maml:name>
        <maml:description>
          <maml:para>Include only items that are relics</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Boolean</command:parameterValue>
        <dev:type>
          <maml:name>Boolean</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="4" aliases="none">
        <maml:name>Replicated</maml:name>
        <maml:description>
          <maml:para>Include only items that are replicated</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Boolean</command:parameterValue>
        <dev:type>
          <maml:name>Boolean</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="5" aliases="none">
        <maml:name>SortBy</maml:name>
        <maml:description>
          <maml:para>Sort by field name</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="6" aliases="none">
        <maml:name>SortOrder</maml:name>
        <maml:description>
          <maml:para>Sort Order</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>None</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>Get-RscHost -OsType Linux</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all Linux from the RSC instance.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>Get-RscHost -OsType Windows -Name myWindowsServer</dev:code>
        <dev:remarks>
          <maml:para>Get a list of Windows Hosts, matching a name pattern.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>Get-RscHost -Id 76254be7-baa4-5145-a4b7-a7a7773ad97d</dev:code>
        <dev:remarks>
          <maml:para>Get a host by Id, with default fields selected.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Get-RscSnapshot</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscSnapshot</command:noun>
      <maml:description>
        <maml:para>Retrieves all of the snapshots (backups) for any given object</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>The Get-RscSnapshot cmdlet is used to query the RSC instance for all known snapshots (backups) for a protected object. Multiple objects to be piped into this function is not yet supported</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-RscSnapshot</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>ClusterUUID</maml:name>
          <maml:description>
            <maml:para>Ensure that the snapshot returned belongs to a specific CDM Cluster.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
          <maml:name>SnapshotId</maml:name>
          <maml:description>
            <maml:para>Retreive a single CDM snapshot by ID. PolarisSnapshot is not yet supported.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Get-RscSnapshot</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="0" aliases="Id">
          <maml:name>SnappableId</maml:name>
          <maml:description>
            <maml:para>The ID of the snappable object to get a list of snapshots for.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
          <maml:name>First</maml:name>
          <maml:description>
            <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
          <dev:type>
            <maml:name>Int32</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>ClusterUUID</maml:name>
        <maml:description>
          <maml:para>Ensure that the snapshot returned belongs to a specific CDM Cluster.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
        <maml:name>First</maml:name>
        <maml:description>
          <maml:para>Gets only the specified number of objects. Enter the number of objects to get.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Int32</command:parameterValue>
        <dev:type>
          <maml:name>Int32</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="0" aliases="Id">
        <maml:name>SnappableId</maml:name>
        <maml:description>
          <maml:para>The ID of the snappable object to get a list of snapshots for.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
        <maml:name>SnapshotId</maml:name>
        <maml:description>
          <maml:para>Retreive a single CDM snapshot by ID. PolarisSnapshot is not yet supported.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>Get-RscSnapshot -Id 'xxxxxx-xxxxx-xxxxxx-xxxxx'</dev:code>
        <dev:remarks>
          <maml:para>Get the snapshot list for an object by the object Id</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>$vm = Get-RscVsphereVm -Id xxxxxx-xxxxxx-xxxxxx-xxxxxx
            $vm | Get-RscSnapshot</dev:code>
        <dev:remarks>
          <maml:para>Get the snapshots for vSphere VM from pipeline</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Get-RscType</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscType</command:noun>
      <maml:description>
        <maml:para>Return a valid empty .NET object for the RubrikSecurityCloud.PowerShell SDK</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>Return a valid empty .NET object for the RubrikSecurityCloud.PowerShell SDK. The cmdlet will return a .NET object by name. The -ListAvailable parameter will return a list of valid RubrikSecurityCloud.Types.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-RscType</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>ListAvailable</maml:name>
          <maml:description>
            <maml:para>Used to request a list of valid Rsc Type Names.</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
          <maml:name>FilterByName</maml:name>
          <maml:description>
            <maml:para>Optional to filter results by name.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
          <maml:name>Interfaces</maml:name>
          <maml:description>
            <maml:para>Flag to specify if interfaces should be returned.</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Get-RscType</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
          <maml:name>Name</maml:name>
          <maml:description>
            <maml:para>The name of the Rsc Type to return</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
          <maml:name>InitialProperties</maml:name>
          <maml:description>
            <maml:para>Specify an array of string containing the names of the properties to initialize.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
          <maml:name>InitialValues</maml:name>
          <maml:description>
            <maml:para>Specify a hashtable mapping the requested fields to their values.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Hashtable</command:parameterValue>
          <dev:type>
            <maml:name>Hashtable</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Get-RscType</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
          <maml:name>Interface</maml:name>
          <maml:description>
            <maml:para>Used to request a list of types implementing a given interface.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
        <maml:name>FilterByName</maml:name>
        <maml:description>
          <maml:para>Optional to filter results by name.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none">
        <maml:name>InitialProperties</maml:name>
        <maml:description>
          <maml:para>Specify an array of string containing the names of the properties to initialize.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none">
        <maml:name>InitialValues</maml:name>
        <maml:description>
          <maml:para>Specify a hashtable mapping the requested fields to their values.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Hashtable</command:parameterValue>
        <dev:type>
          <maml:name>Hashtable</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>Interface</maml:name>
        <maml:description>
          <maml:para>Used to request a list of types implementing a given interface.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none">
        <maml:name>Interfaces</maml:name>
        <maml:description>
          <maml:para>Flag to specify if interfaces should be returned.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none">
        <maml:name>ListAvailable</maml:name>
        <maml:description>
          <maml:para>Used to request a list of valid Rsc Type Names.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
        <maml:name>Name</maml:name>
        <maml:description>
          <maml:para>The name of the Rsc Type to return</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -ListAvailable</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all available Rsc .NET types</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -ListAvailable -FilterByName "accountsetting"</dev:code>
        <dev:remarks>
          <maml:para>Get a list of available Rsc .NET types filtered by name</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -Name "AccountSetting"</dev:code>
        <dev:remarks>
          <maml:para>Get an empty object that is compliant with the Rsc Type specified by name</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -Name "AccountSetting" -InitialProperties @("IsEulaAccepted")</dev:code>
        <dev:remarks>
          <maml:para>Get an empty object that is compliant with the Rsc Type specified by name. Initialize the 'IsEulaAccepted' property</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -Name "AccountSetting" -InitialValues @{"IsEulaAccepted"= $false}</dev:code>
        <dev:remarks>
          <maml:para>Get an empty object that is compliant with the Rsc Type specified by name. Initialize the 'IsEulaAccepted' property with a specific value.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -ListAvailable -Interfaces</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all available Rsc .NET Interfaces</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -ListAvailable -Interfaces -FilterByName "mssql"</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all available Rsc .NET Interfaces filtered by name</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS C:\&gt; Get-RscType -Interface MssqlTopLevelDescendantType</dev:code>
        <dev:remarks>
          <maml:para>Get a list of all Rsc .NET types that implement the MssqlTopLevelDescendantType interface</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Get-RscVersion</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscVersion</command:noun>
      <maml:description>
        <maml:para>Returns the Rubrik Security Cloud Server version, as well a the Rubrik Security Cloud PowerShell SDK schema version. Ideally these values should match for maximum SDK compatibility.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para></maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-RscVersion</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>None</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Invoke-Rsc</command:name>
      <command:verb>Invoke</command:verb>
      <command:noun>Rsc</command:noun>
      <maml:description>
        <maml:para>Send a query to the RSC API.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>There are 2 usages of this cmdlet: 1) -Query : Send a query object (obtained from a `New-RscQuery*` cmdlet); or 2) -GqlQuery : Send a text GraphQL query.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Invoke-Rsc</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
          <maml:name>GqlQuery</maml:name>
          <maml:description>
            <maml:para>The text GraphQL query string to send to the RSC API. Variables can possibly be supplied in a header comment.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>The variables to supply to the GraphQL query. Only used when GqlQuery is set.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Hashtable</command:parameterValue>
          <dev:type>
            <maml:name>Hashtable</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Invoke-Rsc</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
          <maml:name>Query</maml:name>
          <maml:description>
            <maml:para>The query object to send to the RSC API.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
        <maml:name>GqlQuery</maml:name>
        <maml:description>
          <maml:para>The text GraphQL query string to send to the RSC API. Variables can possibly be supplied in a header comment.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none">
        <maml:name>Query</maml:name>
        <maml:description>
          <maml:para>The query object to send to the RSC API.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>The variables to supply to the GraphQL query. Only used when GqlQuery is set.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Hashtable</command:parameterValue>
        <dev:type>
          <maml:name>Hashtable</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Collections.Hashtable</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>#
             # Create a query object
             $q = New-RscQueryGetVsphereVmList -Name "my-vm"
              
             # Send it - by piping to Invoke-Rsc:
             $q | Invoke-Rsc
             # - Or - by calling Invoke() on the query object
             $q.Invoke()
              
             # The above 2 methods are equivalent.</dev:code>
        <dev:remarks>
          <maml:para>Send a query object.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>#
             # Text GraphQL query string
             $gqlQuery = @'
               mutation DeleteWebhookMutation($id: Int!) {
                 deleteWebhook(input: {id: $id})
               }
             '@
              
             # Invoke the query - as a parameter:
             Invoke-Rsc -GqlQuery $gqlQuery -Var @{id = 1}
             # - Or - by piping the query to Invoke-Rsc:
             $gqlQuery | Invoke-Rsc -Var @{id = 1}
             
             # The above 2 methods are equivalent.</dev:code>
        <dev:remarks>
          <maml:para>Send a GraphQL query string.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>#
             # text GraphQL query file with variables in the header
             $gqlFile = "./Samples/queryAccountOwners.gql"
             $gqlQuery = Get-Content -Path $gqlFile -Raw
              
             # Invoke the query - by piping to Invoke-Rsc:
             $gqlQuery | Invoke-Rsc
             # - Or - by giving it as a parameter:
             Invoke-Rsc -GqlQuery $gqlQuery
              
             # The above 2 methods are equivalent.</dev:code>
        <dev:remarks>
          <maml:para>Read the GraphQL query from a .gql file, and send it.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutation</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutation</command:noun>
      <maml:description>
        <maml:para>Create a new RscMutation object.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para></maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutation</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="none">
          <maml:name>Domain</maml:name>
          <maml:description>
            <maml:para>API Domain.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Unknown</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Account</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ActiveDirectory</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ActivitySeries</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Archival</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Aws</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AwsNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Azure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AzureNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AzureO365</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Cassandra</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Certificate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Cluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CrossAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Db2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Download</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Exchange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FailoverCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Fileset</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Gcp</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GcpNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Host</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Hyperv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Integration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">K8s</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ldap</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">M365</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedVolume</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Misc</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mongo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MongoDb</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mosaic</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mssql</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nas</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ncd</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nfs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nutanix</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">O365</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Oracle</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Policy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ransomware</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Rcs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Rcv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Replication</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Report</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SapHana</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ServiceAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sharepoint</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sla</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Smb</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snappable</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snmp</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sonar</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StorageArray</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Syslog</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Tape</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Threat</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vcenter</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vmware</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vsphere</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VsphereVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Webhook</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">ApiDomainName</command:parameterValue>
          <dev:type>
            <maml:name>ApiDomainName</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="none">
        <maml:name>Domain</maml:name>
        <maml:description>
          <maml:para>API Domain.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ApiDomainName</command:parameterValue>
        <dev:type>
          <maml:name>ApiDomainName</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="false" position="named" aliases="none">
        <maml:name>GqlMutation</maml:name>
        <maml:description>
          <maml:para>The root GraphQL mutation to be called</maml:para>
          <maml:para>```yaml Type: GqlMutationName Parameter Sets: GqlMutation Aliases: Accepted values: Unknown, addAdGroupsToHierarchy, addAndJoinSmbDomain, addAwsAuthenticationServerBasedCloudAccount, addAwsIamUserBasedCloudAccount, addAzureCloudAccount, addAzureCloudAccountExocomputeConfigurations, addAzureCloudAccountWithoutOauth, addCloudNativeSqlServerBackupCredentials, addClusterCertificate, addClusterNodes, addClusterRoute, addConfiguredGroupToHierarchy, addCrossAccountServiceConsumer, addCustomIntelFeed, addDb2Instance, addGlobalCertificate, addInventoryWorkloads, addK8sCluster, addK8sProtectionSet, addManagedVolume, addMongoSource, addMosaicStore, addMssqlHost, addNodesToCloudCluster, addO365Org, addPolicyObjects, addRoleAssignments, addSapHanaSystem, addStorageArrays, addSyslogExportRule, addVlan, addVmAppConsistentSpecs, airGapStatus, approveRcvPrivateEndpoint, archiveCrawl, archiveK8sCluster, assignMssqlSlaDomainProperties, assignMssqlSlaDomainPropertiesAsync, assignProtection, assignRetentionSLAToSnappables, assignRetentionSLAToSnapshots, assignSla, assignSlasForSnappableHierarchies, assignSlaToMongoDbCollection, awsExocomputeClusterConnect, azureOauthConsentComplete, azureOauthConsentKickoff, azureUpdateTenantForSubscription, backupAzureAdDirectory, backupM365Mailbox, backupM365Onedrive, backupM365SharepointDrive, backupM365Team, backupO365Mailbox, backupO365Onedrive, backupO365SharepointDrive, backupO365SharepointList, backupO365SharePointSite, backupO365Team, batchDeassignRoleFromUserGroups, batchExportHypervVm, batchExportNutanixVm, batchInstantRecoverHypervVm, batchMountHypervVm, batchMountNutanixVm, batchOnDemandBackupHypervVm, batchQuarantineSnapshot, batchReleaseFromQuarantineSnapshot, beginManagedVolumeSnapshot, browseMssqlDatabaseSnapshot, bulkAddNasShares, bulkCreateFilesets, bulkCreateFilesetTemplates, bulkCreateNasFilesets, bulkCreateOnDemandMssqlBackup, bulkDeleteAwsCloudAccountWithoutCft, bulkDeleteCassandraSources, bulkDeleteFailoverCluster, bulkDeleteFailoverClusterApp, bulkDeleteFileset, bulkDeleteFilesetTemplate, bulkDeleteHost, bulkDeleteMongodbSources, bulkDeleteNasShares, bulkDeleteNasSystems, bulkOnDemandSnapshotNutanixVm, bulkRefreshHosts, bulkRegisterHost, bulkRegisterHostAsync, bulkTierExistingSnapshots, bulkUpdateExchangeDag, bulkUpdateFilesetTemplate, bulkUpdateHost, bulkUpdateMssqlAvailabilityGroup, bulkUpdateMssqlDbs, bulkUpdateMssqlInstance, bulkUpdateMssqlPropertiesOnHost, bulkUpdateMssqlPropertiesOnWindowsCluster, bulkUpdateNasShares, bulkUpdateOracleDatabases, bulkUpdateOracleHosts, bulkUpdateOracleRacs, bulkUpdateRansomwareInvestigationStatus, cancelActivitySeries, cancelDownloadPackage, cancelScheduledUpgrade, cancelTaskchain, cancelThreatHunt, changePassword, changeVfdOnHost, clearCloudNativeSqlServerBackupCredentials, cloudNativeCheckRbaConnectivity, cloudNativeDownloadFiles, completeAzureAdAppSetup, completeAzureAdAppUpdate, completeAzureCloudAccountOauth, configureDb2Restore, configureSapHanaRestore, createActiveDirectoryLiveMount, createActiveDirectoryUnmount, createAutomaticAwsTargetMapping, createAutomaticAzureTargetMapping, createAutomaticRcsTargetMapping, createAwsAccount, createAwsCluster, createAwsComputeSetting, createAwsExocomputeConfigs, createAwsReaderTarget, createAwsTarget, createAzureAccount, createAzureCluster, createAzureReaderTarget, createAzureSaasAppAad, createAzureTarget, createCassandraSource, createCloudNativeAwsStorageSetting, createCloudNativeAzureStorageSetting, createCloudNativeLabelRule, createCloudNativeRcvAzureStorageSetting, createCloudNativeTagRule, createCrossAccountPair, createCrossAccountRegOauthPayload, createCustomAnalyzer, createCustomReport, createDomainControllerSnapshot, createDownloadSnapshotForVolumeGroup, createEventDigestBatch, createExchangeMount, createFailoverCluster, createFailoverClusterApp, createFilesetSnapshot, createGcpReaderTarget, createGcpTarget, createGlacierReaderTarget, createGlobalSla, createGuestCredential, createHypervVirtualMachineSnapshotDiskMount, createHypervVirtualMachineSnapshotMount, createIntegration, createIntegrations, createK8sAgentManifest, createK8sCluster, createK8sNamespaceSnapshots, createK8sProtectionSetSnapshot, createLegalHold, createManualTargetMapping, createMongodbSource, createMssqlLiveMount, createMssqlLogShippingConfiguration, createNfsReaderTarget, createNfsTarget, createNutanixCluster, createNutanixPrismCentral, createO365AppComplete, createO365AppKickoff, createOnDemandDb2Backup, createOnDemandExchangeBackup, createOnDemandMssqlBackup, createOnDemandNutanixBackup, createOnDemandSapHanaBackup, createOnDemandSapHanaStorageSnapshot, createOnDemandVolumeGroupBackup, createOraclePdbRestore, createOrg, createOrgSwitchSession, createPolicy, createRcsReaderTarget, createRcsTarget, createRcvLocationsFromTemplate, createRcvPrivateEndpointApprovalRequest, createReplicationPair, createRole, createS3CompatibleReaderTarget, createS3CompatibleTarget, createSapHanaSystemRefresh, createScheduledReport, createServiceAccount, createTapeReaderTarget, createTapeTarget, createUser, createUserWithPassword, createVappsInstantRecovery, createVsphereAdvancedTag, createVsphereVcenter, createWebhook, deactivateCustomAnalyzer, deactivatePolicy, deleteAdGroupsFromHierarchy, deleteAllOracleDatabaseSnapshots, deleteAwsComputeSetting, deleteAwsExocomputeConfigs, deleteAzureAdDirectory, deleteAzureCloudAccount, deleteAzureCloudAccountExocomputeConfigurations, deleteAzureCloudAccountWithoutOauth, deleteCassandraSource, deleteCertificate, deleteCloudNativeLabelRule, deleteCloudNativeTagRule, deleteCloudWorkloadSnapshot, deleteClusterRoute, deleteCrossAccountPair, deleteCsr, deleteCustomReport, deleteDb2Database, deleteDb2Instance, deleteDistributionListDigestBatch, deleteEventDigest, deleteExchangeSnapshotMount, deleteFailoverCluster, deleteFailoverClusterApp, deleteFilesetSnapshots, deleteGlobalCertificate, deleteGlobalSla, deleteGuestCredentialById, deleteHypervVirtualMachineSnapshot, deleteHypervVirtualMachineSnapshotMount, deleteIntegration, deleteIntegrations, deleteIntelFeed, deleteK8sCluster, deleteK8sProtectionSet, deleteLdapPrincipals, deleteLogShipping, deleteManagedVolume, deleteManagedVolumeSnapshotExport, deleteMongodbSource, deleteMongoSource, deleteMosaicStore, deleteMssqlDbSnapshots, deleteMssqlLiveMount, deleteNasSystem, deleteNutanixCluster, deleteNutanixMountV1, deleteNutanixPrismCentral, deleteNutanixSnapshot, deleteNutanixSnapshots, deleteO365AzureApp, deleteO365Org, deleteO365ServiceAccount, deleteOracleMount, deleteOrg, deleteReplicationPair, deleteRole, deleteSapHanaDbSnapshot, deleteSapHanaSystem, deleteScheduledReport, deleteServiceAccountsFromAccount, deleteSmbDomain, deleteSnapshotsOfUnmanagedObjects, deleteStorageArrays, deleteSyslogExportRule, deleteTarget, deleteTargetMapping, deleteTotpConfig, deleteTotpConfigs, deleteUnmanagedSnapshots, deleteUsersFromAccount, deleteVolumeGroupMount, deleteVsphereAdvancedTag, deleteVsphereLiveMount, deleteWebhook, deregisterPrivateContainerRegistry, disableReplicationPause, disableSupportUserAccess, disableTarget, disconnectAwsExocomputeCluster, discoverDb2Instance, discoverMongoSource, dissolveLegalHold, downloadActiveDirectorySnapshotFromLocation, downloadAuditLogCsvAsync, downloadDb2Snapshot, downloadDb2SnapshotsForPointInTimeRecovery, downloadDb2SnapshotV2, downloadExchangeSnapshot, downloadExchangeSnapshotV2, downloadFilesetSnapshot, downloadFilesetSnapshotFromLocation, downloadFilesNutanixSnapshot, downloadFromArchiveV2, downloadHypervSnapshotFromLocation, downloadHypervVirtualMachineLevelFiles, downloadHypervVirtualMachineSnapshot, downloadHypervVirtualMachineSnapshotFiles, downloadManagedVolumeFiles, downloadManagedVolumeFromLocation, downloadMssqlDatabaseBackupFiles, downloadMssqlDatabaseFilesFromArchivalLocation, downloadNutanixSnapshot, downloadNutanixVdisks, downloadNutanixVmFromLocation, downloadObjectFilesCsv, downloadObjectsListCsv, downloadOracleDatabaseSnapshot, downloadOracleSnapshotFromLocation, downloadOracleSnapshotFromLocationV2, downloadReportCsvAsync, downloadReportPdfAsync, downloadResultsCsv, downloadSapHanaSnapshot, downloadSapHanaSnapshotFromLocation, downloadSapHanaSnapshotsForPointInTimeRecovery, downloadSnapshotResultsCsv, downloadThreatHuntCsv, downloadUserActivityCsv, downloadUserFileActivityCsv, downloadVolumeGroupSnapshotFiles, downloadVolumeGroupSnapshotFromLocation, downloadVsphereVirtualMachineFiles, enableAutomaticFmdUpload, enableDisableAppConsistency, enableO365SharePoint, enableO365Teams, enableReplicationPause, enableSupportUserAccess, enableTarget, enableThreatMonitoring, endManagedVolumeSnapshot, excludeAwsNativeEbsVolumesFromSnapshot, excludeAzureNativeManagedDisksFromSnapshot, excludeSharepointObjectsFromProtection, excludeVmDisks, expireDownloadedDb2Snapshots, expireDownloadedSapHanaSnapshots, expireSnoozedDirectories, exportHypervVirtualMachine, exportK8sNamespace, exportK8sProtectionSetSnapshot, exportManagedVolumeSnapshot, exportMssqlDatabase, exportNutanixSnapshot, exportO365Mailbox, exportO365MailboxV2, exportOracleDatabase, exportOracleTablespace, exportSlaManagedVolumeSnapshot, filesetDownloadSnapshotFiles, filesetExportSnapshotFiles, filesetRecoverFiles, finalizeAwsCloudAccountDeletion, finalizeAwsCloudAccountProtection, gcpCloudAccountAddManualAuthProject, gcpCloudAccountAddProjects, gcpCloudAccountDeleteProjects, gcpCloudAccountOauthComplete, gcpCloudAccountOauthInitiate, gcpCloudAccountUpgradeProjects, gcpNativeDisableProject, gcpNativeExcludeDisksFromInstanceSnapshot, gcpNativeExportDisk, gcpNativeExportGceInstance, gcpNativeRefreshProjects, gcpNativeRestoreGceInstance, gcpSetDefaultServiceAccountJwtConfig, generateClusterRegistrationToken, generateConfigProtectionRestoreForm, generateCsr, generateSupportBundle, generateTotpSecret, getDownloadUrl, getHealthMonitorPolicyStatus, getPendingSlaAssignments, hideRevealNasNamespaces, hideRevealNasShares, hypervDeleteAllSnapshots, hypervOnDemandSnapshot, hypervScvmmDelete, hypervScvmmUpdate, inplaceExportHypervVirtualMachine, insertCustomerO365App, installIoFilter, instantRecoverHypervVirtualMachineSnapshot, instantRecoverOracleSnapshot, inviteSsoGroup, joinSmbDomain, listCidrsForComputeSetting, lockUsersByAdmin, logoutFromRubrikSupportPortal, makePrimary, manageProtectionForLinkedObjects, mapAzureCloudAccountExocomputeSubscription, mapAzureCloudAccountToPersistentStorageLocation, mapCloudAccountExocomputeAccount, markAgentSecondaryCertificate, migrateCloudClusterDisks, migrateNutanixMountV1, modifyActiveDirectoryLiveMount, modifyEventDigestBatch, modifyIpmi, mountDisk, mountNutanixSnapshotV1, mountNutanixVdisks, mountOracleDatabase, mutateRole, notificationForGetLicense, o365OauthConsentComplete, o365OauthConsentKickoff, o365PdlGroups, o365SaasSetupComplete, o365SaaSSetupKickoff, o365SetupKickoff, patchAwsAuthenticationServerBasedCloudAccount, patchAwsIamUserBasedCloudAccount, patchDb2Database, patchDb2Instance, patchMongoSource, patchNutanixMountV1, patchSapHanaSystem, pauseSla, pauseTarget, prepareAwsCloudAccountDeletion, prepareFeatureUpdateForAwsCloudAccount, promoteReaderTarget, putSmbConfiguration, recoverCassandraSource, recoverCloudCluster, recoverCloudDirectMultiPaths, recoverCloudDirectPath, recoverMongodbSource, recoverMongoSource, refreshDb2Database, refreshDomain, refreshGlobalManagerConnectivityStatus, refreshHost, refreshHypervScvmm, refreshHypervServer, refreshK8sCluster, refreshK8sV2Cluster, refreshNasSystems, refreshNutanixCluster, refreshNutanixPrismCentral, refreshO365Org, refreshOracleDatabase, refreshReaderTarget, refreshStorageArrays, refreshVsphereVcenter, registerAgentHypervVirtualMachine, registerAgentNutanixVm, registerAwsFeatureArtifacts, registerCloudCluster, registerHypervScvmm, registerNasSystem, releasePersistentExoclusters, removeCdmCluster, removeClusterNodes, removeDisk, removeInventoryWorkloads, removeLdapIntegration, removePolicyObjects, removePrivateEndpointConnection, removeProxyConfig, removeVlans, requestPersistentExocluster, reseedLogShippingSecondary, resetAllOrgUsersPasswords, resetUsersPasswordsWithUserIds, resizeDisk, resizeManagedVolume, resolveAnomaly, resolveVolumeGroupsConflict, restoreActiveDirectoryObjects, restoreAzureAdObjectsWithPasswords, restoreDomainControllerSnapshot, restoreFilesNutanixSnapshot, restoreHypervVirtualMachineSnapshotFiles, restoreK8sNamespace, restoreK8sProtectionSetSnapshot, restoreMssqlDatabase, restoreO365Mailbox, restoreO365MailboxV2, restoreO365Snappable, restoreO365TeamsConversations, restoreO365TeamsFiles, restoreOracleLogs, restoreSapHanaSystemStorage, restoreVolumeGroupSnapshotFiles, resumeTarget, retryAddMongoSource, retryBackup, retryDownloadPackageJob, revokeAllOrgRoles, rotateServiceAccountSecret, runCustomAnalyzer, scheduleUpgradeBatchJob, seedEnabledPolicies, seedInitialPolicies, sendPdfReport, sendScheduledReportAsync, setAnalyzerRisks, setAzureCloudAccountCustomerAppCredentials, setBundleApprovalStatus, setCustomerTags, setDatastoreFreespaceThresholds, setIpWhitelistEnabled, setLdapMfaSetting, setMfaSetting, setMissingClusterStatus, setO365ServiceAccount, setPasswordComplexityPolicy, setPrivateContainerRegistry, setSsoCertificate, setTotpConfig, setupAzureO365Exocompute, setupCloudNativeSqlServerBackup, setupDisk, setUpgradeType, setUserLevelTotpEnforcement, setWebSignedCertificate, setWorkloadAlertSetting, startAwsExocomputeDisableJob, startAwsNativeAccountDisableJob, startAwsNativeEc2InstanceSnapshotsJob, startAwsNativeRdsInstanceSnapshotsJob, startAzureAdAppSetup, startAzureAdAppUpdate, startAzureCloudAccountOauth, startCloudNativeSnapshotsIndexJob, startClusterReportMigrationJob, startCrawl, startCreateAwsNativeEbsVolumeSnapshotsJob, startCreateAzureNativeManagedDiskSnapshotsJob, startCreateAzureNativeVirtualMachineSnapshotsJob, startDisableAzureCloudAccountJob, startDisableAzureNativeSubscriptionProtectionJob, startDownloadPackageBatchJob, startEc2InstanceSnapshotExportJob, startExportAwsNativeEbsVolumeSnapshotJob, startExportAzureNativeManagedDiskJob, startExportAzureNativeVirtualMachineJob, startExportAzureSqlDatabaseDbJob, startExportAzureSqlManagedInstanceDbJob, startExportRdsInstanceJob, startPeriodicUpgradePrechecksOnDemandJob, startRecoverS3SnapshotJob, startRefreshAwsNativeAccountsJob, startRefreshAzureNativeSubscriptionsJob, startRestoreAwsNativeEc2InstanceSnapshotJob, startRestoreAzureNativeVirtualMachineJob, startThreatHunt, startUpgradeBatchJob, startVolumeGroupMount, stopJobInstance, stopJobInstanceFromEventSeries, supportPortalLogin, switchProductToOnboardingMode, takeManagedVolumeOnDemandSnapshot, takeMssqlLogBackup, takeOnDemandOracleDatabaseSnapshot, takeOnDemandOracleLogSnapshot, takeOnDemandSnapshot, testExistingWebhook, testSyslogExportRule, testWebhook, triggerCloudComputeConnectivityCheck, triggerExocomputeHealthCheck, triggerRansomwareDetection, unconfigureSapHanaRestore, uninstallIoFilter, unlockUsersByAdmin, unmapAzureCloudAccountExocomputeSubscription, unmapAzurePersistentStorageSubscription, unmapCloudAccountExocomputeAccount, unmountDisk, updateAccountOwner, updateAdGroup, updateAgentDeploymentSetting, updateAgentDeploymentSettingInBatch, updateAuthDomainUsersHiddenStatus, updateAutoEnablePolicyClusterConfig, updateAutomaticAwsTargetMapping, updateAutomaticAzureTargetMapping, updateAwsAccount, updateAwsCloudAccount, updateAwsCloudAccountFeature, updateAwsComputeSetting, updateAwsExocomputeConfigs, updateAwsTarget, updateAzureAccount, updateAzureCloudAccount, updateAzureTarget, updateBackupThrottleSetting, updateBadDiskLedStatus, updateCassandraSource, updateCertificate, updateCertificateHost, updateCloudNativeAwsStorageSetting, updateCloudNativeAzureStorageSetting, updateCloudNativeIndexingStatus, updateCloudNativeLabelRule, updateCloudNativeRcvAzureStorageSetting, updateCloudNativeTagRule, updateClusterDefaultAddress, updateClusterLocation, updateClusterNtpServers, updateClusterPauseStatus, updateClusterSettings, updateConfiguredGroup, updateCustomAnalyzer, updateCustomerAppPermissionForAzureSql, updateCustomerAppPermissions, updateCustomIntelFeed, updateCustomReport, updateDatabaseLogReportingPropertiesForCluster, updateDistributionListDigest, updateDnsServersAndSearchDomains, updateEventDigest, updateFailoverCluster, updateFailoverClusterApp, updateFloatingIps, updateGcpTarget, updateGlacierTarget, updateGlobalCertificate, updateGlobalSla, updateGuestCredential, updateHealthMonitorPolicyStatus, updateHypervVirtualMachine, updateHypervVirtualMachineSnapshotMount, updateInsightState, updateIntegration, updateIntegrations, updateIocStatus, updateIpWhitelist, updateK8sCluster, updateK8sProtectionSet, updateLambdaSettings, updateLdapIntegration, updateLockoutConfig, updateManagedIdentities, updateManagedVolume, updateManualTargetMapping, updateMongodbSource, updateMosaicStore, updateMssqlDefaultProperties, updateMssqlLogShippingConfiguration, updateMssqlLogShippingConfigurationV1, updateNasShares, updateNasSystem, updateNetworkThrottle, updateNfsTarget, updateNutanixCluster, updateNutanixPrismCentral, updateNutanixVm, updateO365AppAuthStatus, updateO365AppPermissions, updateO365OrgCustomName, updateOracleDataGuardGroup, updateOrg, updateOrgSecurityPolicy, updatePolicy, updatePreviewerClusterConfig, updateProxyConfig, updateRcsAutomaticTargetMapping, updateRcvTarget, updateReplicationNetworkThrottleBypass, updateReplicationTarget, updateRole, updateRoleAssignments, updateS3CompatibleTarget, updateScheduledReport, updateServiceAccount, updateSnmpConfig, updateStorageArrays, updateSupportUserAccess, updateSyslogExportRule, updateTapeTarget, updateTunnelStatus, updateVcenter, updateVcenterHotAddBandwidth, updateVcenterHotAddNetwork, updateVcenterV2, updateVlan, updateVolumeGroup, updateVsphereAdvancedTag, updateVsphereVm, updateVsphereVmNew, updateWebhook, updateWhitelistedAnalyzers, upgradeAwsCloudAccountFeaturesWithoutCft, upgradeAwsIamUserBasedCloudAccountPermissions, upgradeAzureCloudAccount, upgradeAzureCloudAccountPermissionsWithoutOauth, upgradeCdmManagedTarget, upgradeGcpCloudAccountPermissionsWithoutOauth, upgradeIoFilter, upgradeSlas, upgradeToRsc, uploadDatabaseSnapshotToBlobstore, validateAndCreateAwsCloudAccount, validateAndInitiateAwsOutpostAccount, validateAndSaveCustomerKmsInfo, validateOracleAcoFile, validateOracleDatabaseBackups, vmMakePrimary, vmwareDownloadSnapshotFromLocation, vsphereBulkOnDemandSnapshot, vsphereDeleteVcenter, vsphereExcludeVmDisks, vsphereExportSnapshotToStandaloneHostV2, vsphereOnDemandSnapshot, vsphereSnapshotDownloadFilesFromLocation, vsphereSnapshotRestoreFilesFromLocation, vsphereVmBatchExport, vsphereVmBatchExportV3, vsphereVmBatchInPlaceRecovery, vsphereVmDeleteSnapshot, vsphereVmDownloadSnapshot, vsphereVmDownloadSnapshotFiles, vsphereVmExportSnapshotV2, vsphereVmExportSnapshotV3, vsphereVmExportSnapshotWithDownloadFromCloud, vsphereVmInitiateBatchInstantRecovery, vsphereVmInitiateBatchLiveMountV2, vsphereVmInitiateDiskMount, vsphereVmInitiateInPlaceRecovery, vsphereVmInitiateInstantRecoveryV2, vsphereVmInitiateLiveMountV2, vsphereVmListEsxiDatastores, vsphereVmMountRelocate, vsphereVmMountRelocateV2, vsphereVmPowerOnOffLiveMount, vsphereVmRecoverFiles, vsphereVmRecoverFilesNew, vsphereVmRegisterAgent, vsphereVmRegisterAgentWithOrg, vsphereVmUpdateUnmountTime, warmSearchCache</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: True (ByPropertyName, ByValue) Accept wildcard characters: False ```</maml:para>
          <maml:para>### -Operation API Operation.</maml:para>
          <maml:para>```yaml Type: String Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### -RemoveField remove fields to the set of fields that are selected for retrieval.</maml:para>
          <maml:para>```yaml Type: String[] Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### -ValidPatchSet Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          <maml:para>```yaml Type: SwitchParameter Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### -Var Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          <maml:para>```yaml Type: Object Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: 1 Default value: None Accept pipeline input: True (ByPropertyName, ByValue) Accept wildcard characters: False ```</maml:para>
          <maml:para>### -ProgressAction {{ Fill ProgressAction Description }}</maml:para>
          <maml:para>```yaml Type: ActionPreference Parameter Sets: (All) Aliases: proga</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### CommonParameters This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).</maml:para>
          <maml:para>## INPUTS</maml:para>
          <maml:para>### System.Nullable`1[[RubrikSecurityCloud.Types.SchemaMeta+GqlMutationName, RubrikSecurityCloud.Schema, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]</maml:para>
          <maml:para>### RubrikSecurityCloud.Types.SchemaMeta+ApiDomainName</maml:para>
          <maml:para>### RubrikSecurityCloud.RscQuery</maml:para>
          <maml:para>### System.Object</maml:para>
          <maml:para>## OUTPUTS</maml:para>
          <maml:para>### System.Object ## NOTES</maml:para>
          <maml:para>## RELATED LINKS</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false"></command:parameterValue>
        <dev:type>
          <maml:name></maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 14 operations in the 'Account' API domain: CreateOrg, CreateOrgSwitchSession, CreateRole, CreateUser, CreateUserWithPassword, DeleteOrg, DeleteRole, DeleteTotpConfig, DeleteTotpConfigs, DeleteUsers, GenerateTotpSecret, MutateRole, UpdateOrg, or UpdateRole.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationAccount creates a new mutation object for operations in the 'Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 14 operations in the 'Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateOrg, CreateOrgSwitchSession, CreateRole, CreateUser, CreateUserWithPassword, DeleteOrg, DeleteRole, DeleteTotpConfig, DeleteTotpConfigs, DeleteUsers, GenerateTotpSecret, MutateRole, UpdateOrg, or UpdateRole. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAccount -CreateOrg).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAccount -CreateOrg).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateOrg</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOrgSwitchSession</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateRole</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateUser</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateUserWithPassword</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteOrg</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteRole</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteTotpConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteTotpConfigs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteUsers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GenerateTotpSecret</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MutateRole</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateOrg</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateRole</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: CreateOrg
              
             $query = New-RscMutationAccount -CreateOrg
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 fullName = $someString
                 # REQUIRED
                 description = $someString
                 # REQUIRED
                 authDomainConfig = $someTenantAuthDomainConfig # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TenantAuthDomainConfig]) for enum values.
                 # REQUIRED
                 shouldEnforceMfaForAll = $someBoolean
                 # REQUIRED
                 isEnvoyRequired = $someBoolean
                 # REQUIRED
                 allowedClusters = @(
                     $someString
                 )
                 # OPTIONAL
                 existingUsers = @(
                     @{
                         # REQUIRED
                         id = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # OPTIONAL
                 userInvites = @(
                     @{
                         # REQUIRED
                         email = $someString
                         # REQUIRED
                         note = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # REQUIRED
                 permissions = @(
                     @{
                         # REQUIRED
                         operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
                         # REQUIRED
                         objectsForHierarchyTypes = @(
                             @{
                                 # REQUIRED
                                 objectIds = @(
                                     $someString
                                 )
                                 # REQUIRED
                                 snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                             }
                         )
                     }
                 )
                 # REQUIRED
                 selfServicePermissions = @(
                     @{
                         # OPTIONAL
                         inventoryRoot = $someInventorySubHierarchyRootEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventorySubHierarchyRootEnum]) for enum values.
                         # REQUIRED
                         inventoryWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                         # REQUIRED
                         operations = @(
                             $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
                         )
                         # OPTIONAL
                         hierarchyRoot = $someString
                     }
                 )
                 # OPTIONAL
                 existingSsoGroups = @(
                     @{
                         # REQUIRED
                         id = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # OPTIONAL
                 newSsoGroups = @(
                     @{
                         # REQUIRED
                         name = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # OPTIONAL
                 isServiceAccountEnabled = $someBoolean
                 # OPTIONAL
                 isServiceAccountDisabled = $someBoolean
                 # OPTIONAL
                 crossAccountCapabilities = @(
                     $someCrossAccountCapability # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CrossAccountCapability]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOrgReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOrg operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: CreateOrgSwitchSession
              
             $query = New-RscMutationAccount -CreateOrgSwitchSession
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOrgSwitchSessionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOrgSwitchSession operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: CreateRole
              
             $query = New-RscMutationAccount -CreateRole
              
             # REQUIRED
             $query.Var.name = $someString
             # REQUIRED
             $query.Var.description = $someString
             # REQUIRED
             $query.Var.permissions = @(
                 @{
                     # REQUIRED
                     operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
                     # REQUIRED
                     objectsForHierarchyTypes = @(
                         @{
                             # REQUIRED
                             objectIds = @(
                                 $someString
                             )
                             # REQUIRED
                             snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                         }
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateRole operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: CreateUser
              
             $query = New-RscMutationAccount -CreateUser
              
             # REQUIRED
             $query.Var.email = $someString
             # REQUIRED
             $query.Var.roleIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateUser operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: CreateUserWithPassword
              
             $query = New-RscMutationAccount -CreateUserWithPassword
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 email = $someString
                 # OPTIONAL
                 password = $someString
                 # OPTIONAL
                 roleIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateUserWithPassword operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: DeleteOrg
              
             $query = New-RscMutationAccount -DeleteOrg
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 organizationId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteOrg operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: DeleteRole
              
             $query = New-RscMutationAccount -DeleteRole
              
             # REQUIRED
             $query.Var.roleId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteRole operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: DeleteTotpConfig
              
             $query = New-RscMutationAccount -DeleteTotpConfig
              
             # REQUIRED
             $query.Var.userId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteTotpConfig operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: DeleteTotpConfigs
              
             $query = New-RscMutationAccount -DeleteTotpConfigs
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 userIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteTotpConfigs operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: DeleteUsers
              
             $query = New-RscMutationAccount -DeleteUsers
              
             # REQUIRED
             $query.Var.ids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteUsers operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: GenerateTotpSecret
              
             $query = New-RscMutationAccount -GenerateTotpSecret
              
             # REQUIRED
             $query.Var.userId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GenerateTotpSecretReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GenerateTotpSecret operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: MutateRole
              
             $query = New-RscMutationAccount -MutateRole
              
             # OPTIONAL
             $query.Var.roleId = $someString
             # REQUIRED
             $query.Var.name = $someString
             # REQUIRED
             $query.Var.description = $someString
             # REQUIRED
             $query.Var.permissions = @(
                 @{
                     # REQUIRED
                     operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
                     # REQUIRED
                     objectsForHierarchyTypes = @(
                         @{
                             # REQUIRED
                             objectIds = @(
                                 $someString
                             )
                             # REQUIRED
                             snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                         }
                     )
             }
             )
             # REQUIRED
             $query.Var.protectableClusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the MutateRole operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: UpdateOrg
              
             $query = New-RscMutationAccount -UpdateOrg
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 organizationId = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 fullName = $someString
                 # REQUIRED
                 description = $someString
                 # REQUIRED
                 authDomainConfig = $someTenantAuthDomainConfig # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TenantAuthDomainConfig]) for enum values.
                 # REQUIRED
                 shouldEnforceMfaForAll = $someBoolean
                 # REQUIRED
                 isEnvoyRequired = $someBoolean
                 # REQUIRED
                 allowedClusters = @(
                     $someString
                 )
                 # OPTIONAL
                 existingUsers = @(
                     @{
                         # REQUIRED
                         id = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # OPTIONAL
                 userInvites = @(
                     @{
                         # REQUIRED
                         email = $someString
                         # REQUIRED
                         note = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # REQUIRED
                 permissions = @(
                     @{
                         # REQUIRED
                         operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
                         # REQUIRED
                         objectsForHierarchyTypes = @(
                             @{
                                 # REQUIRED
                                 objectIds = @(
                                     $someString
                                 )
                                 # REQUIRED
                                 snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                             }
                         )
                     }
                 )
                 # REQUIRED
                 selfServicePermissions = @(
                     @{
                         # OPTIONAL
                         inventoryRoot = $someInventorySubHierarchyRootEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventorySubHierarchyRootEnum]) for enum values.
                         # REQUIRED
                         inventoryWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                         # REQUIRED
                         operations = @(
                             $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
                         )
                         # OPTIONAL
                         hierarchyRoot = $someString
                     }
                 )
                 # OPTIONAL
                 existingSsoGroups = @(
                     @{
                         # REQUIRED
                         id = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # OPTIONAL
                 newSsoGroups = @(
                     @{
                         # REQUIRED
                         name = $someString
                         # REQUIRED
                         isOrgAdmin = $someBoolean
                     }
                 )
                 # OPTIONAL
                 isServiceAccountEnabled = $someBoolean
                 # OPTIONAL
                 isServiceAccountDisabled = $someBoolean
                 # OPTIONAL
                 crossAccountCapabilities = @(
                     $someCrossAccountCapability # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CrossAccountCapability]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateOrgReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateOrg operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: UpdateRole
              
             $query = New-RscMutationAccount -UpdateRole
              
             # REQUIRED
             $query.Var.roleId = $someString
             # REQUIRED
             $query.Var.name = $someString
             # REQUIRED
             $query.Var.description = $someString
             # REQUIRED
             $query.Var.permissions = @(
                 @{
                     # REQUIRED
                     operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
                     # REQUIRED
                     objectsForHierarchyTypes = @(
                         @{
                             # REQUIRED
                             objectIds = @(
                                 $someString
                             )
                             # REQUIRED
                             snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                         }
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateRole operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationActiveDirectory</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationActiveDirectory</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Active Directory' API domain: CreateLiveMount, CreateUnmount, ModifyLiveMount, or RestoreObjects.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationActiveDirectory creates a new mutation object for operations in the 'Active Directory' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Active Directory' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateLiveMount, CreateUnmount, ModifyLiveMount, or RestoreObjects. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationActiveDirectory -CreateLiveMount).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationActiveDirectory -CreateLiveMount).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationActiveDirectory</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateLiveMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateUnmount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ModifyLiveMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreObjects</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: CreateLiveMount
              
             $query = New-RscMutationActiveDirectory -CreateLiveMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     validUsers = @(
                         $someString
                     )
                     # OPTIONAL
                     validIps = @(
                         $someString
                     )
                     # OPTIONAL
                     mountExpiryInMinutes = $someInt
                     # OPTIONAL
                     domainControllerId = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     shouldBeWritable = $someBoolean
                     # OPTIONAL
                     domainName = $someString
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     shouldMountVhdx = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateLiveMount operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: CreateUnmount
              
             $query = New-RscMutationActiveDirectory -CreateUnmount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateUnmount operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: ModifyLiveMount
              
             $query = New-RscMutationActiveDirectory -ModifyLiveMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     validIps = @(
                         $someString
                     )
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     subnet = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ModifyLiveMount operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: RestoreObjects
              
             $query = New-RscMutationActiveDirectory -RestoreObjects
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     shouldMergeLinkedAttrs = $someBoolean
                     # OPTIONAL
                     restoreToDifferentContainer = $someString
                     # OPTIONAL
                     shouldContinueOnError = $someBoolean
                     # OPTIONAL
                     clearUpAttrsIfNullInBackup = $someBoolean
                     # OPTIONAL
                     alternateDcId = $someString
                     # OPTIONAL
                     shouldCreateMissingParents = $someBoolean
                     # OPTIONAL
                     locationId = $someString
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     nameConflict = $someActiveDirectoryObjectNameConflictOption # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActiveDirectoryObjectNameConflictOption]) for enum values.
                     # OPTIONAL
                     objectMovedOptions = $someActiveDirectoryObjectMovedOption # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActiveDirectoryObjectMovedOption]) for enum values.
                     # OPTIONAL
                     containerRestoreOptions = @{
                         # OPTIONAL
                         shouldDeleteExtraObjects = $someBoolean
                         # OPTIONAL
                         shouldOnlyRecreateMissingObjects = $someBoolean
                     }
                     # OPTIONAL
                     credsForRestore = @{
                         # REQUIRED
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                     # REQUIRED
                     domainControllerRecoveryObjects = @(
                         @{
                             # OPTIONAL
                             attributes = @(
                                 $someString
                             )
                             # OPTIONAL
                             objectType = $someActiveDirectoryObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActiveDirectoryObjectType]) for enum values.
                             # REQUIRED
                             dnt = $someInt64
                         }
                     )
                     # OPTIONAL
                     userRestoreOptions = @{
                         # OPTIONAL
                         shouldEnableUser = $someBoolean
                         # OPTIONAL
                         shouldChangePassword = $someBoolean
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         passwordOptions = $someActiveDirectoryUserPasswordRecoveryOption # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActiveDirectoryUserPasswordRecoveryOption]) for enum values.
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreObjects operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationActivitySeries</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationActivitySeries</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 3 operations in the 'Activity series' API domain: Cancel, DownloadUserCsv, or DownloadUserFileCsv.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationActivitySeries creates a new mutation object for operations in the 'Activity series' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'Activity series' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Cancel, DownloadUserCsv, or DownloadUserFileCsv. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationActivitySeries -Cancel).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationActivitySeries -Cancel).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationActivitySeries</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Cancel</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadUserCsv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadUserFileCsv</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActivitySeries
             # API Operation: Cancel
              
             $query = New-RscMutationActivitySeries -Cancel
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 activitySeriesId = $someString
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the Cancel operation of the 'Activity series' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActivitySeries
             # API Operation: DownloadUserCsv
              
             $query = New-RscMutationActivitySeries -DownloadUserCsv
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 filters = @{
                     # OPTIONAL
                     openAccessTypes = @(
                         $someOpenAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OpenAccessType]) for enum values.
                     )
                     # OPTIONAL
                     stalenessTypes = @(
                         $someStalenessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StalenessType]) for enum values.
                     )
                     # OPTIONAL
                     analyzerGroupIds = @(
                         $someString
                     )
                     # OPTIONAL
                     clusterIds = @(
                         $someString
                     )
                     # OPTIONAL
                     pathPrefix = $someString
                     # OPTIONAL
                     snappableTypes = @(
                         $someString
                     )
                     # OPTIONAL
                     searchText = $someString
                     # OPTIONAL
                     whitelistEnabled = $someBoolean
                     # OPTIONAL
                     fileCountTypes = @(
                         $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values.
                     )
                     # OPTIONAL
                     accessTypes = @(
                         $someAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AccessType]) for enum values.
                     )
                     # OPTIONAL
                     activityTypes = @(
                         $someActivityAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityAccessType]) for enum values.
                     )
                     # OPTIONAL
                     objectIds = @(
                         $someString
                     )
                     # OPTIONAL
                     inodeTypes = @(
                         $someInodeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InodeType]) for enum values.
                     )
                     # REQUIRED
                     objectTypes = @(
                         $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                     )
                 }
                 # REQUIRED
                 day = $someString
                 # REQUIRED
                 timezone = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadUserCsv operation of the 'Activity series' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActivitySeries
             # API Operation: DownloadUserFileCsv
              
             $query = New-RscMutationActivitySeries -DownloadUserFileCsv
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 userId = $someString
                 # REQUIRED
                 snapshot = @{
                     # OPTIONAL
                     snappableFid = $someString
                     # OPTIONAL
                     snapshotFid = $someString
                 }
                 # REQUIRED
                 nativePath = $someString
                 # REQUIRED
                 timezone = $someString
                 # REQUIRED
                 startDay = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadUserFileCsv operation of the 'Activity series' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationArchival</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationArchival</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 16 operations in the 'Archival' API domain: CreateGlacierReaderTarget, CreateManualTargetMapping, CreateS3CompatibleReaderTarget, CreateS3CompatibleTarget, DeleteTarget, DeleteTargetMapping, DisableTarget, EnableTarget, PauseTarget, PromoteReaderTarget, RefreshReaderTarget, ResumeTarget, UpdateGlacierTarget, UpdateManualTargetMapping, UpdateS3CompatibleTarget, or UpgradeCdmManagedTarget.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationArchival creates a new mutation object for operations in the 'Archival' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 16 operations in the 'Archival' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateGlacierReaderTarget, CreateManualTargetMapping, CreateS3CompatibleReaderTarget, CreateS3CompatibleTarget, DeleteTarget, DeleteTargetMapping, DisableTarget, EnableTarget, PauseTarget, PromoteReaderTarget, RefreshReaderTarget, ResumeTarget, UpdateGlacierTarget, UpdateManualTargetMapping, UpdateS3CompatibleTarget, or UpgradeCdmManagedTarget. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationArchival -CreateGlacierReaderTarget).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationArchival -CreateGlacierReaderTarget).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationArchival</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateGlacierReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateManualTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateS3CompatibleReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateS3CompatibleTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DisableTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EnableTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PauseTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PromoteReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResumeTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateGlacierTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateManualTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateS3CompatibleTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeCdmManagedTarget</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: CreateGlacierReaderTarget
              
             $query = New-RscMutationArchival -CreateGlacierReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 vaultName = $someString
                 # REQUIRED
                 region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
                 # OPTIONAL
                 encryptionPassword = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # OPTIONAL
                 retrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values.
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateGlacierReaderTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: CreateManualTargetMapping
              
             $query = New-RscMutationArchival -CreateManualTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 type = $someTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TargetType]) for enum values.
                 # OPTIONAL
                 archivalLocationClusterMappings = @(
                     @{
                         # OPTIONAL
                         locationId = $someString
                         # OPTIONAL
                         clusterUuid = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateManualTargetMapping operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: CreateS3CompatibleReaderTarget
              
             $query = New-RscMutationArchival -CreateS3CompatibleReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 accessKey = $someString
                 # REQUIRED
                 secretKey = $someString
                 # REQUIRED
                 endpoint = $someString
                 # REQUIRED
                 bucketPrefix = $someString
                 # REQUIRED
                 numberOfBuckets = $someInt
                 # REQUIRED
                 encryptionKeyInDer = $someString
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # REQUIRED
                 useSystemProxy = $someBoolean
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
                 # OPTIONAL
                 subType = $someS3CompatibleSubType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.S3CompatibleSubType]) for enum values.
                 # OPTIONAL
                 encryptionPassword = $someString
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     bucketLockDurationDays = $someInt
                 }
                 # OPTIONAL
                 ibmDetails = @{
                     # OPTIONAL
                     provisioningCode = $someString
                     # OPTIONAL
                     deploymentType = $someIbmDeploymentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IbmDeploymentType]) for enum values.
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateS3CompatibleReaderTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: CreateS3CompatibleTarget
              
             $query = New-RscMutationArchival -CreateS3CompatibleTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 accessKey = $someString
                 # REQUIRED
                 secretKey = $someString
                 # REQUIRED
                 endpoint = $someString
                 # REQUIRED
                 bucketPrefix = $someString
                 # REQUIRED
                 numberOfBuckets = $someInt
                 # REQUIRED
                 encryptionKeyInDer = $someString
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # REQUIRED
                 useSystemProxy = $someBoolean
                 # OPTIONAL
                 subType = $someS3CompatibleSubType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.S3CompatibleSubType]) for enum values.
                 # OPTIONAL
                 encryptionPassword = $someString
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     bucketLockDurationDays = $someInt
                 }
                 # OPTIONAL
                 ibmDetails = @{
                     # OPTIONAL
                     provisioningCode = $someString
                     # OPTIONAL
                     deploymentType = $someIbmDeploymentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IbmDeploymentType]) for enum values.
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateS3CompatibleTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: DeleteTarget
              
             $query = New-RscMutationArchival -DeleteTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: DeleteTargetMapping
              
             $query = New-RscMutationArchival -DeleteTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteTargetMapping operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: DisableTarget
              
             $query = New-RscMutationArchival -DisableTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DisableTargetReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DisableTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: EnableTarget
              
             $query = New-RscMutationArchival -EnableTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: EnableTargetReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: PauseTarget
              
             $query = New-RscMutationArchival -PauseTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PauseTargetReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PauseTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: PromoteReaderTarget
              
             $query = New-RscMutationArchival -PromoteReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 locationId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the PromoteReaderTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: RefreshReaderTarget
              
             $query = New-RscMutationArchival -RefreshReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 localDataSourceIds = @(
                     $someString
                 )
                 # OPTIONAL
                 archivalDataSourceIds = @(
                     $someString
                 )
                 # OPTIONAL
                 locationId = $someString
                 # OPTIONAL
                 externalLocationId = $someString
                 # OPTIONAL
                 clusterId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshReaderTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: ResumeTarget
              
             $query = New-RscMutationArchival -ResumeTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResumeTargetReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResumeTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: UpdateGlacierTarget
              
             $query = New-RscMutationArchival -UpdateGlacierTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 retrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values.
                 # OPTIONAL
                 cloudAccountId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateGlacierTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: UpdateManualTargetMapping
              
             $query = New-RscMutationArchival -UpdateManualTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 archivalLocationClusterMappings = @(
                     @{
                         # OPTIONAL
                         locationId = $someString
                         # OPTIONAL
                         clusterUuid = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateManualTargetMapping operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: UpdateS3CompatibleTarget
              
             $query = New-RscMutationArchival -UpdateS3CompatibleTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 accessKey = $someString
                 # OPTIONAL
                 secretKey = $someString
                 # OPTIONAL
                 endpoint = $someString
                 # OPTIONAL
                 numberOfBuckets = $someInt
                 # OPTIONAL
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 useSystemProxy = $someBoolean
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     bucketLockDurationDays = $someInt
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateS3CompatibleTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: UpgradeCdmManagedTarget
              
             $query = New-RscMutationArchival -UpgradeCdmManagedTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 fids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeCdmManagedTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationAws</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationAws</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 35 operations in the 'AWS' API domain: AddAuthenticationServerBasedCloudAccount, AddIamUserBasedCloudAccount, BulkDeleteCloudAccountWithoutCft, CreateAccount, CreateAutomaticTargetMapping, CreateCloudNativeStorageSetting, CreateCluster, CreateComputeSetting, CreateExocomputeConfigs, CreateReaderTarget, CreateTarget, DeleteComputeSetting, DeleteExocomputeConfigs, DisconnectExocomputeCluster, ExocomputeClusterConnect, FinalizeCloudAccountDeletion, FinalizeCloudAccountProtection, PatchAuthenticationServerBasedCloudAccount, PatchIamUserBasedCloudAccount, PrepareCloudAccountDeletion, PrepareFeatureUpdateForCloudAccount, RegisterFeatureArtifacts, StartExocomputeDisableJob, UpdateAccount, UpdateAutomaticTargetMapping, UpdateCloudAccount, UpdateCloudAccountFeature, UpdateCloudNativeStorageSetting, UpdateComputeSetting, UpdateExocomputeConfigs, UpdateTarget, UpgradeCloudAccountFeaturesWithoutCft, UpgradeIamUserBasedCloudAccountPermissions, ValidateAndCreateCloudAccount, or ValidateAndInitiateOutpostAccount.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationAws creates a new mutation object for operations in the 'AWS' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 35 operations in the 'AWS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddAuthenticationServerBasedCloudAccount, AddIamUserBasedCloudAccount, BulkDeleteCloudAccountWithoutCft, CreateAccount, CreateAutomaticTargetMapping, CreateCloudNativeStorageSetting, CreateCluster, CreateComputeSetting, CreateExocomputeConfigs, CreateReaderTarget, CreateTarget, DeleteComputeSetting, DeleteExocomputeConfigs, DisconnectExocomputeCluster, ExocomputeClusterConnect, FinalizeCloudAccountDeletion, FinalizeCloudAccountProtection, PatchAuthenticationServerBasedCloudAccount, PatchIamUserBasedCloudAccount, PrepareCloudAccountDeletion, PrepareFeatureUpdateForCloudAccount, RegisterFeatureArtifacts, StartExocomputeDisableJob, UpdateAccount, UpdateAutomaticTargetMapping, UpdateCloudAccount, UpdateCloudAccountFeature, UpdateCloudNativeStorageSetting, UpdateComputeSetting, UpdateExocomputeConfigs, UpdateTarget, UpgradeCloudAccountFeaturesWithoutCft, UpgradeIamUserBasedCloudAccountPermissions, ValidateAndCreateCloudAccount, or ValidateAndInitiateOutpostAccount. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAws -AddAuthenticationServerBasedCloudAccount).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAws -AddAuthenticationServerBasedCloudAccount).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationAws</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddAuthenticationServerBasedCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddIamUserBasedCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkDeleteCloudAccountWithoutCft</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateAutomaticTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCloudNativeStorageSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateComputeSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateExocomputeConfigs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteComputeSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteExocomputeConfigs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DisconnectExocomputeCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExocomputeClusterConnect</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FinalizeCloudAccountDeletion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FinalizeCloudAccountProtection</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PatchAuthenticationServerBasedCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PatchIamUserBasedCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PrepareCloudAccountDeletion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PrepareFeatureUpdateForCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterFeatureArtifacts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartExocomputeDisableJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAutomaticTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCloudAccountFeature</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCloudNativeStorageSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateComputeSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateExocomputeConfigs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeCloudAccountFeaturesWithoutCft</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeIamUserBasedCloudAccountPermissions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateAndCreateCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateAndInitiateOutpostAccount</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: AddAuthenticationServerBasedCloudAccount
              
             $query = New-RscMutationAws -AddAuthenticationServerBasedCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                 # REQUIRED
                 awsAccountName = $someString
                 # OPTIONAL
                 awsRegions = @(
                     $someAwsAuthServerBasedCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsAuthServerBasedCloudAccountRegion]) for enum values.
                 )
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 nativeId = $someString
                 # OPTIONAL
                 agencyName = $someString
                 # OPTIONAL
                 roleName = $someString
                 # OPTIONAL
                 authServerHostName = $someString
                 # OPTIONAL
                 authServerUserClientCertId = @{
                     # REQUIRED
                     id = $someInt64
                 }
                 # OPTIONAL
                 authServerCaCertId = @{
                     # REQUIRED
                     id = $someInt64
                 }
                 # OPTIONAL
                 awsCaCertId = @{
                     # REQUIRED
                     id = $someInt64
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddAwsAuthenticationServerBasedCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddAuthenticationServerBasedCloudAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: AddIamUserBasedCloudAccount
              
             $query = New-RscMutationAws -AddIamUserBasedCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 accessKey = $someString
                 # OPTIONAL
                 secretKey = $someString
                 # REQUIRED
                 nativeId = $someString
                 # REQUIRED
                 cloudAccountName = $someString
                 # OPTIONAL
                 cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                 # OPTIONAL
                 awsRegions = @(
                     $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values.
                 )
                 # OPTIONAL
                 roleArn = $someString
                 # OPTIONAL
                 externalArtifactMap = @(
                     @{
                         # OPTIONAL
                         externalArtifactKey = $someAwsCloudExternalArtifact # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudExternalArtifact]) for enum values.
                         # OPTIONAL
                         externalArtifactValue = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddAwsIamUserBasedCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddIamUserBasedCloudAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: BulkDeleteCloudAccountWithoutCft
              
             $query = New-RscMutationAws -BulkDeleteCloudAccountWithoutCft
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsNativeId = $someString
                 # OPTIONAL
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkDeleteAwsCloudAccountWithoutCftReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDeleteCloudAccountWithoutCft operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateAccount
              
             $query = New-RscMutationAws -CreateAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # REQUIRED
                 accessKey = $someString
                 # REQUIRED
                 secretKey = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudAccount</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateAutomaticTargetMapping
              
             $query = New-RscMutationAws -CreateAutomaticTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 bucketPrefix = $someString
                 # REQUIRED
                 storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values.
                 # REQUIRED
                 region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
                 # OPTIONAL
                 kmsMasterKeyId = $someString
                 # OPTIONAL
                 rsaKey = $someString
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # OPTIONAL
                 awsComputeSettingsId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAutomaticTargetMapping operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateCloudNativeStorageSetting
              
             $query = New-RscMutationAws -CreateCloudNativeStorageSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 bucketPrefix = $someString
                 # REQUIRED
                 storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values.
                 # OPTIONAL
                 region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
                 # OPTIONAL
                 kmsMasterKeyId = $someString
                 # REQUIRED
                 cloudNativeLocTemplateType = $someCloudNativeLocTemplateType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLocTemplateType]) for enum values.
                 # OPTIONAL
                 bucketTags = @{
                     # REQUIRED
                     tagList = @(
                         @{
                             # REQUIRED
                             key = $someString
                             # REQUIRED
                             value = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateCloudNativeAwsStorageSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCloudNativeStorageSetting operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateCluster
              
             $query = New-RscMutationAws -CreateCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 isEsType = $someBoolean
                 # OPTIONAL
                 keepClusterOnFailure = $someBoolean
                 # OPTIONAL
                 region = $someString
                 # OPTIONAL
                 disableApiTermination = $someBoolean
                 # OPTIONAL
                 clusterConfig = @{
                     # OPTIONAL
                     userEmail = $someString
                     # OPTIONAL
                     adminPassword = $someString
                     # OPTIONAL
                     clusterName = $someString
                     # OPTIONAL
                     numNodes = $someInt
                     # OPTIONAL
                     dnsSearchDomains = @(
                         $someString
                     )
                     # OPTIONAL
                     dnsNameServers = @(
                         $someString
                     )
                     # OPTIONAL
                     ntpServers = @(
                         $someString
                     )
                     # OPTIONAL
                     azureEsConfig = @{
                         # OPTIONAL
                         storageAccount = $someString
                         # OPTIONAL
                         resourceGroup = $someString
                         # OPTIONAL
                         storageSecret = $someString
                         # OPTIONAL
                         containerName = $someString
                         # OPTIONAL
                         shouldCreateContainer = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                         # OPTIONAL
                         managedIdentity = @{
                             # OPTIONAL
                             name = $someString
                             # OPTIONAL
                             clientId = $someString
                             # OPTIONAL
                             resourceGroup = $someString
                         }
                     }
                     # OPTIONAL
                     awsEsConfig = @{
                         # OPTIONAL
                         bucketName = $someString
                         # OPTIONAL
                         shouldCreateBucket = $someBoolean
                         # OPTIONAL
                         enableObjectLock = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                     }
                 }
                 # OPTIONAL
                 vmConfig = @{
                     # OPTIONAL
                     cdmVersion = $someString
                     # OPTIONAL
                     nodeSizeGb = $someInt
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     tags = $someString
                     # OPTIONAL
                     imageId = $someString
                     # OPTIONAL
                     instanceProfileName = $someString
                     # OPTIONAL
                     cdmProduct = $someString
                     # OPTIONAL
                     vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values.
                     # OPTIONAL
                     securityGroups = @(
                         $someString
                     )
                     # OPTIONAL
                     instanceType = $someAwsInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsInstanceType]) for enum values.
                     # OPTIONAL
                     networkConfig = @(
                         @{
                             # OPTIONAL
                             availabilityZone = $someString
                             # OPTIONAL
                             subnet = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 validations = @(
                     $someClusterCreateValidations # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCreateValidations]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CcProvisionJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCluster operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateComputeSetting
              
             $query = New-RscMutationAws -CreateComputeSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 subnetId = $someString
                 # OPTIONAL
                 vpcId = $someString
                 # OPTIONAL
                 securityGroupId = $someString
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
                 # OPTIONAL
                 isSecurityGroupPolarisManaged = $someBoolean
                 # OPTIONAL
                 clusterInterfaceCidrs = @(
                     @{
                         # OPTIONAL
                         clusterName = $someString
                         # OPTIONAL
                         clusterId = $someString
                         # OPTIONAL
                         interfaceCidr = @(
                             @{
                                 # OPTIONAL
                                 interfaceType = $someInterfaceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InterfaceType]) for enum values.
                                 # OPTIONAL
                                 cidr = $someString
                                 # OPTIONAL
                                 selected = $someBoolean
                             }
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsComputeSettings</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateComputeSetting operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateExocomputeConfigs
              
             $query = New-RscMutationAws -CreateExocomputeConfigs
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 configs = @(
                     @{
                         # REQUIRED
                         region = $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values.
                         # OPTIONAL
                         clusterSecurityGroupId = $someString
                         # OPTIONAL
                         vpcId = $someString
                         # OPTIONAL
                         nodeSecurityGroupId = $someString
                         # OPTIONAL
                         subnets = @(
                             @{
                                 # REQUIRED
                                 subnetId = $someString
                                 # REQUIRED
                                 availabilityZone = $someString
                             }
                         )
                         # OPTIONAL
                         isRscManaged = $someBoolean
                         # OPTIONAL
                         clusterName = $someString
                     }
                 )
                 # OPTIONAL
                 triggerHealthCheck = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateAwsExocomputeConfigsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateExocomputeConfigs operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateReaderTarget
              
             $query = New-RscMutationAws -CreateReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 bucketName = $someString
                 # REQUIRED
                 storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values.
                 # REQUIRED
                 region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
                 # OPTIONAL
                 kmsMasterKeyId = $someString
                 # OPTIONAL
                 rsaKey = $someString
                 # OPTIONAL
                 encryptionPassword = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 awsComputeSettingsId = $someString
                 # OPTIONAL
                 cloudComputeSettings = @{
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     vpcId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                 }
                 # OPTIONAL
                 awsRetrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values.
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
                 # OPTIONAL
                 s3Endpoint = $someString
                 # OPTIONAL
                 kmsEndpoint = $someString
                 # OPTIONAL
                 computeProxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 awsIamPairId = $someString
                 # REQUIRED
                 bypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateReaderTarget operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CreateTarget
              
             $query = New-RscMutationAws -CreateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 bucketName = $someString
                 # REQUIRED
                 storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values.
                 # REQUIRED
                 region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
                 # OPTIONAL
                 kmsMasterKeyId = $someString
                 # OPTIONAL
                 rsaKey = $someString
                 # OPTIONAL
                 encryptionPassword = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 awsComputeSettingsId = $someString
                 # OPTIONAL
                 cloudComputeSettings = @{
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     vpcId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                 }
                 # OPTIONAL
                 computeProxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 awsRetrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values.
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     lockDurationDays = $someInt
                 }
                 # OPTIONAL
                 s3Endpoint = $someString
                 # OPTIONAL
                 kmsEndpoint = $someString
                 # OPTIONAL
                 awsIamPairId = $someString
                 # REQUIRED
                 bypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateTarget operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: DeleteComputeSetting
              
             $query = New-RscMutationAws -DeleteComputeSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteComputeSetting operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: DeleteExocomputeConfigs
              
             $query = New-RscMutationAws -DeleteExocomputeConfigs
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 configIdsToBeDeleted = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DeleteAwsExocomputeConfigsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteExocomputeConfigs operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: DisconnectExocomputeCluster
              
             $query = New-RscMutationAws -DisconnectExocomputeCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DisconnectExocomputeCluster operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ExocomputeClusterConnect
              
             $query = New-RscMutationAws -ExocomputeClusterConnect
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterName = $someString
                 # REQUIRED
                 exocomputeConfigId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsExocomputeClusterConnectReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExocomputeClusterConnect operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: FinalizeCloudAccountDeletion
              
             $query = New-RscMutationAws -FinalizeCloudAccountDeletion
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # OPTIONAL
                 awsIamPairId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FinalizeAwsCloudAccountDeletionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the FinalizeCloudAccountDeletion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: FinalizeCloudAccountProtection
              
             $query = New-RscMutationAws -FinalizeCloudAccountProtection
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 action = $someCloudAccountAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountAction]) for enum values.
                 # OPTIONAL
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 awsAdminAccount = @{
                     # OPTIONAL
                     id = $someString
                     # OPTIONAL
                     nativeId = $someString
                     # OPTIONAL
                     accountName = $someString
                     # OPTIONAL
                     seamlessFlowEnabled = $someBoolean
                     # OPTIONAL
                     orgName = $someString
                     # OPTIONAL
                     outpostAwsNativeId = $someString
                     # OPTIONAL
                     cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                 }
                 # REQUIRED
                 awsChildAccounts = @(
                     @{
                         # OPTIONAL
                         id = $someString
                         # OPTIONAL
                         nativeId = $someString
                         # OPTIONAL
                         accountName = $someString
                         # OPTIONAL
                         seamlessFlowEnabled = $someBoolean
                         # OPTIONAL
                         orgName = $someString
                         # OPTIONAL
                         outpostAwsNativeId = $someString
                         # OPTIONAL
                         cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 awsRegions = @(
                     $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values.
                 )
                 # OPTIONAL
                 stackName = $someString
                 # OPTIONAL
                 stackSetName = $someString
                 # OPTIONAL
                 externalId = $someString
                 # OPTIONAL
                 featureVersion = @(
                     @{
                         # REQUIRED
                         feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         # OPTIONAL
                         version = $someInt
                         # OPTIONAL
                         permissionsGroupVersions = @(
                             @{
                                 # REQUIRED
                                 permissionsGroup = $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                                 # OPTIONAL
                                 version = $someInt
                             }
                         )
                     }
                 )
                 # OPTIONAL
                 featuresWithPermissionsGroups = @(
                     @{
                         # OPTIONAL
                         featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         # OPTIONAL
                         permissionsGroups = @(
                             $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                         )
                     }
                 )
                 # OPTIONAL
                 awsIamPairId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FinalizeAwsCloudAccountProtectionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the FinalizeCloudAccountProtection operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: PatchAuthenticationServerBasedCloudAccount
              
             $query = New-RscMutationAws -PatchAuthenticationServerBasedCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsCloudAccountId = $someString
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # OPTIONAL
                 awsRegions = @{
                     # REQUIRED
                     regions = @(
                         $someAwsAuthServerBasedCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsAuthServerBasedCloudAccountRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 roleName = @{
                     # REQUIRED
                     name = $someString
                 }
                 # OPTIONAL
                 authServerUserClientCertId = @{
                     # REQUIRED
                     id = $someInt64
                 }
                 # OPTIONAL
                 authServerCaCertId = @{
                     # REQUIRED
                     id = $someInt64
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the PatchAuthenticationServerBasedCloudAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: PatchIamUserBasedCloudAccount
              
             $query = New-RscMutationAws -PatchIamUserBasedCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsCloudAccountId = $someString
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # OPTIONAL
                 awsRegions = @{
                     # REQUIRED
                     regions = @(
                         $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 awsUserKeys = @{
                     # REQUIRED
                     accessKey = $someString
                     # REQUIRED
                     secretKey = $someString
                 }
                 # OPTIONAL
                 awsRoleArn = @{
                     # REQUIRED
                     roleArn = $someString
                 }
                 # OPTIONAL
                 externalArtifactMap = @(
                     @{
                         # OPTIONAL
                         externalArtifactKey = $someAwsCloudExternalArtifact # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudExternalArtifact]) for enum values.
                         # OPTIONAL
                         externalArtifactValue = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the PatchIamUserBasedCloudAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: PrepareCloudAccountDeletion
              
             $query = New-RscMutationAws -PrepareCloudAccountDeletion
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # OPTIONAL
                 awsRoleCustomization = @{
                     # OPTIONAL
                     crossAccountRoleName = $someString
                     # OPTIONAL
                     crossAccountRolePath = $someString
                     # OPTIONAL
                     masterRoleName = $someString
                     # OPTIONAL
                     masterRolePath = $someString
                     # OPTIONAL
                     workerRoleName = $someString
                     # OPTIONAL
                     workerRolePath = $someString
                     # OPTIONAL
                     instanceProfileName = $someString
                     # OPTIONAL
                     instanceProfilePath = $someString
                     # OPTIONAL
                     ec2RecoveryRolePath = $someString
                 }
                 # OPTIONAL
                 awsIamPairId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PrepareAwsCloudAccountDeletionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PrepareCloudAccountDeletion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: PrepareFeatureUpdateForCloudAccount
              
             $query = New-RscMutationAws -PrepareFeatureUpdateForCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # OPTIONAL
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 featuresWithPermissionsGroups = @(
                     @{
                         # OPTIONAL
                         featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         # OPTIONAL
                         permissionsGroups = @(
                             $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                         )
                     }
                 )
                 # OPTIONAL
                 awsRoleCustomization = @{
                     # OPTIONAL
                     crossAccountRoleName = $someString
                     # OPTIONAL
                     crossAccountRolePath = $someString
                     # OPTIONAL
                     masterRoleName = $someString
                     # OPTIONAL
                     masterRolePath = $someString
                     # OPTIONAL
                     workerRoleName = $someString
                     # OPTIONAL
                     workerRolePath = $someString
                     # OPTIONAL
                     instanceProfileName = $someString
                     # OPTIONAL
                     instanceProfilePath = $someString
                     # OPTIONAL
                     ec2RecoveryRolePath = $someString
                 }
                 # OPTIONAL
                 awsIamPairId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PrepareFeatureUpdateForAwsCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PrepareFeatureUpdateForCloudAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: RegisterFeatureArtifacts
              
             $query = New-RscMutationAws -RegisterFeatureArtifacts
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsArtifacts = @(
                     @{
                         # REQUIRED
                         awsNativeId = $someString
                         # REQUIRED
                         externalArtifacts = @(
                             @{
                                 # REQUIRED
                                 externalArtifactValue = $someString
                                 # OPTIONAL
                                 externalArtifactKey = $someAwsCloudExternalArtifact # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudExternalArtifact]) for enum values.
                             }
                         )
                         # REQUIRED
                         features = @(
                             $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         )
                     }
                 )
                 # OPTIONAL
                 cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RegisterAwsFeatureArtifactsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterFeatureArtifacts operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: StartExocomputeDisableJob
              
             $query = New-RscMutationAws -StartExocomputeDisableJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartExocomputeDisableJob operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateAccount
              
             $query = New-RscMutationAws -UpdateAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # REQUIRED
                 accessKey = $someString
                 # REQUIRED
                 secretKey = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudAccount</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateAutomaticTargetMapping
              
             $query = New-RscMutationAws -UpdateAutomaticTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values.
                 # OPTIONAL
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # OPTIONAL
                 awsComputeSettingsId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAutomaticTargetMapping operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateCloudAccount
              
             $query = New-RscMutationAws -UpdateCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # OPTIONAL
                 awsAccountName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCloudAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateCloudAccountFeature
              
             $query = New-RscMutationAws -UpdateCloudAccountFeature
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 action = $someCloudAccountAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountAction]) for enum values.
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # OPTIONAL
                 awsRegions = @(
                     $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values.
                 )
                 # OPTIONAL
                 roleArn = $someString
                 # OPTIONAL
                 stackArn = $someString
                 # OPTIONAL
                 awsAccountName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateAwsCloudAccountFeatureReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCloudAccountFeature operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateCloudNativeStorageSetting
              
             $query = New-RscMutationAws -UpdateCloudNativeStorageSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values.
                 # OPTIONAL
                 kmsMasterKeyId = $someString
                 # OPTIONAL
                 bucketTags = @{
                     # REQUIRED
                     tagList = @(
                         @{
                             # REQUIRED
                             key = $someString
                             # REQUIRED
                             value = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 deleteAllBucketTags = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateCloudNativeAwsStorageSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCloudNativeStorageSetting operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateComputeSetting
              
             $query = New-RscMutationAws -UpdateComputeSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 subnetId = $someString
                 # OPTIONAL
                 vpcId = $someString
                 # OPTIONAL
                 securityGroupId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsComputeSettings</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateComputeSetting operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateExocomputeConfigs
              
             $query = New-RscMutationAws -UpdateExocomputeConfigs
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 configs = @(
                     @{
                         # REQUIRED
                         region = $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values.
                         # OPTIONAL
                         clusterSecurityGroupId = $someString
                         # OPTIONAL
                         vpcId = $someString
                         # OPTIONAL
                         nodeSecurityGroupId = $someString
                         # OPTIONAL
                         subnets = @(
                             @{
                                 # REQUIRED
                                 subnetId = $someString
                                 # REQUIRED
                                 availabilityZone = $someString
                             }
                         )
                         # OPTIONAL
                         isRscManaged = $someBoolean
                         # OPTIONAL
                         clusterName = $someString
                     }
                 )
                 # OPTIONAL
                 triggerHealthCheck = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateAwsExocomputeConfigsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateExocomputeConfigs operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpdateTarget
              
             $query = New-RscMutationAws -UpdateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values.
                 # OPTIONAL
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 awsComputeSettingsId = $someString
                 # OPTIONAL
                 cloudComputeSettings = @{
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     vpcId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                 }
                 # OPTIONAL
                 computeProxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 awsRetrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values.
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     lockDurationDays = $someInt
                 }
                 # OPTIONAL
                 s3Endpoint = $someString
                 # OPTIONAL
                 kmsEndpoint = $someString
                 # OPTIONAL
                 bypassProxy = $someBoolean
                 # OPTIONAL
                 awsIamPairId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTarget operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 32 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpgradeCloudAccountFeaturesWithoutCft
              
             $query = New-RscMutationAws -UpgradeCloudAccountFeaturesWithoutCft
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsCloudAccountId = $someString
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeCloudAccountFeaturesWithoutCft operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 33 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: UpgradeIamUserBasedCloudAccountPermissions
              
             $query = New-RscMutationAws -UpgradeIamUserBasedCloudAccountPermissions
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsCloudAccountId = $someString
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeIamUserBasedCloudAccountPermissions operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 34 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ValidateAndCreateCloudAccount
              
             $query = New-RscMutationAws -ValidateAndCreateCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 action = $someCloudAccountAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountAction]) for enum values.
                 # OPTIONAL
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 awsAdminAccount = @{
                     # OPTIONAL
                     id = $someString
                     # OPTIONAL
                     nativeId = $someString
                     # OPTIONAL
                     accountName = $someString
                     # OPTIONAL
                     seamlessFlowEnabled = $someBoolean
                     # OPTIONAL
                     orgName = $someString
                     # OPTIONAL
                     outpostAwsNativeId = $someString
                     # OPTIONAL
                     cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                 }
                 # REQUIRED
                 awsChildAccounts = @(
                     @{
                         # OPTIONAL
                         id = $someString
                         # OPTIONAL
                         nativeId = $someString
                         # OPTIONAL
                         accountName = $someString
                         # OPTIONAL
                         seamlessFlowEnabled = $someBoolean
                         # OPTIONAL
                         orgName = $someString
                         # OPTIONAL
                         outpostAwsNativeId = $someString
                         # OPTIONAL
                         cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 awsRoleCustomization = @{
                     # OPTIONAL
                     crossAccountRoleName = $someString
                     # OPTIONAL
                     crossAccountRolePath = $someString
                     # OPTIONAL
                     masterRoleName = $someString
                     # OPTIONAL
                     masterRolePath = $someString
                     # OPTIONAL
                     workerRoleName = $someString
                     # OPTIONAL
                     workerRolePath = $someString
                     # OPTIONAL
                     instanceProfileName = $someString
                     # OPTIONAL
                     instanceProfilePath = $someString
                     # OPTIONAL
                     ec2RecoveryRolePath = $someString
                 }
                 # OPTIONAL
                 featuresWithPermissionsGroups = @(
                     @{
                         # OPTIONAL
                         featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         # OPTIONAL
                         permissionsGroups = @(
                             $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                         )
                     }
                 )
                 # OPTIONAL
                 awsIamPair = @{
                     # OPTIONAL
                     awsIamPairId = $someString
                     # OPTIONAL
                     awsIamRoleName = $someString
                 }
                 # OPTIONAL
                 outpostAwsNativeId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAndCreateAwsCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateAndCreateCloudAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 35 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ValidateAndInitiateOutpostAccount
              
             $query = New-RscMutationAws -ValidateAndInitiateOutpostAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 outpostAwsNativeId = $someString
                 # OPTIONAL
                 cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAndInitiateAwsOutpostAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateAndInitiateOutpostAccount operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationAwsNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationAwsNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'AWS Native' API domain: ExcludeEbsVolumesFromSnapshot, StartAccountDisableJob, StartCreateEbsVolumeSnapshotsJob, StartEc2InstanceSnapshotsJob, StartExportEbsVolumeSnapshotJob, StartRdsInstanceSnapshotsJob, StartRefreshAccountsJob, or StartRestoreEc2InstanceSnapshotJob.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationAwsNative creates a new mutation object for operations in the 'AWS Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'AWS Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ExcludeEbsVolumesFromSnapshot, StartAccountDisableJob, StartCreateEbsVolumeSnapshotsJob, StartEc2InstanceSnapshotsJob, StartExportEbsVolumeSnapshotJob, StartRdsInstanceSnapshotsJob, StartRefreshAccountsJob, or StartRestoreEc2InstanceSnapshotJob. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAwsNative -ExcludeEbsVolumesFromSnapshot).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAwsNative -ExcludeEbsVolumesFromSnapshot).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationAwsNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ExcludeEbsVolumesFromSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartAccountDisableJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartCreateEbsVolumeSnapshotsJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartEc2InstanceSnapshotsJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartExportEbsVolumeSnapshotJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartRdsInstanceSnapshotsJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartRefreshAccountsJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartRestoreEc2InstanceSnapshotJob</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: ExcludeEbsVolumesFromSnapshot
              
             $query = New-RscMutationAwsNative -ExcludeEbsVolumesFromSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsNativeEc2InstanceId = $someString
                 # REQUIRED
                 volumeIdExclusions = @(
                     @{
                         # REQUIRED
                         volumeId = $someString
                         # REQUIRED
                         isExcluded = $someBoolean
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExcludeEbsVolumesFromSnapshot operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: StartAccountDisableJob
              
             $query = New-RscMutationAwsNative -StartAccountDisableJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsAccountRubrikId = $someString
                 # REQUIRED
                 shouldDeleteNativeSnapshots = $someBoolean
                 # REQUIRED
                 awsNativeProtectionFeature = $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartAccountDisableJob operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: StartCreateEbsVolumeSnapshotsJob
              
             $query = New-RscMutationAwsNative -StartCreateEbsVolumeSnapshotsJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ebsVolumeIds = @(
                     $someString
                 )
                 # OPTIONAL
                 retentionSlaId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartCreateEbsVolumeSnapshotsJob operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: StartEc2InstanceSnapshotsJob
              
             $query = New-RscMutationAwsNative -StartEc2InstanceSnapshotsJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ec2InstanceIds = @(
                     $someString
                 )
                 # OPTIONAL
                 retentionSlaId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartEc2InstanceSnapshotsJob operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: StartExportEbsVolumeSnapshotJob
              
             $query = New-RscMutationAwsNative -StartExportEbsVolumeSnapshotJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 destinationAwsAccountRubrikId = $someString
                 # REQUIRED
                 destinationRegionNativeId = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
                 # REQUIRED
                 volumeName = $someString
                 # REQUIRED
                 volumeSize = $someInt
                 # REQUIRED
                 volumeType = $someAwsNativeEbsVolumeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEbsVolumeType]) for enum values.
                 # REQUIRED
                 availabilityZone = $someString
                 # REQUIRED
                 iops = $someInt
                 # REQUIRED
                 shouldCopyTags = $someBoolean
                 # REQUIRED
                 shouldReplaceAttached = $someBoolean
                 # OPTIONAL
                 kmsKeyId = $someString
                 # OPTIONAL
                 snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartExportEbsVolumeSnapshotJob operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: StartRdsInstanceSnapshotsJob
              
             $query = New-RscMutationAwsNative -StartRdsInstanceSnapshotsJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 rdsInstanceIds = @(
                     $someString
                 )
                 # OPTIONAL
                 retentionSlaId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartRdsInstanceSnapshotsJob operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: StartRefreshAccountsJob
              
             $query = New-RscMutationAwsNative -StartRefreshAccountsJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsAccountRubrikIds = @(
                     $someString
                 )
                 # REQUIRED
                 awsNativeProtectionFeatures = @(
                     $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartRefreshAccountsJob operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: StartRestoreEc2InstanceSnapshotJob
              
             $query = New-RscMutationAwsNative -StartRestoreEc2InstanceSnapshotJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 shouldPowerOn = $someBoolean
                 # REQUIRED
                 shouldRestoreTags = $someBoolean
                 # OPTIONAL
                 snapshotTypeToUseIfSourceExpired = $someSnapshotTypeToUseIfSourceExpired # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeToUseIfSourceExpired]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartRestoreEc2InstanceSnapshotJob operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationAzure</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationAzure</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 43 operations in the 'Azure' API domain: AddCloudAccount, AddCloudAccountExocomputeConfigurations, AddCloudAccountWithoutOauth, BackupAdDirectory, CompleteAdAppSetup, CompleteAdAppUpdate, CompleteCloudAccountOauth, CreateAccount, CreateAutomaticTargetMapping, CreateCloudNativeRcvStorageSetting, CreateCloudNativeStorageSetting, CreateCluster, CreateReaderTarget, CreateSaasAppAad, CreateTarget, DeleteAdDirectory, DeleteCloudAccount, DeleteCloudAccountExocomputeConfigurations, DeleteCloudAccountWithoutOauth, MapCloudAccountExocomputeSubscription, MapCloudAccountToPersistentStorageLocation, OauthConsentComplete, OauthConsentKickoff, RestoreAdObjectsWithPasswords, SetCloudAccountCustomerAppCredentials, StartAdAppSetup, StartAdAppUpdate, StartCloudAccountOauth, StartDisableCloudAccountJob, StartExportSqlDatabaseDbJob, StartExportSqlManagedInstanceDbJob, UnmapCloudAccountExocomputeSubscription, UnmapPersistentStorageSubscription, UpdateAccount, UpdateAutomaticTargetMapping, UpdateCloudAccount, UpdateCloudNativeRcvStorageSetting, UpdateCloudNativeStorageSetting, UpdateCustomerAppPermissionForSql, UpdateTarget, UpdateTenantForSubscription, UpgradeCloudAccount, or UpgradeCloudAccountPermissionsWithoutOauth.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationAzure creates a new mutation object for operations in the 'Azure' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 43 operations in the 'Azure' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddCloudAccount, AddCloudAccountExocomputeConfigurations, AddCloudAccountWithoutOauth, BackupAdDirectory, CompleteAdAppSetup, CompleteAdAppUpdate, CompleteCloudAccountOauth, CreateAccount, CreateAutomaticTargetMapping, CreateCloudNativeRcvStorageSetting, CreateCloudNativeStorageSetting, CreateCluster, CreateReaderTarget, CreateSaasAppAad, CreateTarget, DeleteAdDirectory, DeleteCloudAccount, DeleteCloudAccountExocomputeConfigurations, DeleteCloudAccountWithoutOauth, MapCloudAccountExocomputeSubscription, MapCloudAccountToPersistentStorageLocation, OauthConsentComplete, OauthConsentKickoff, RestoreAdObjectsWithPasswords, SetCloudAccountCustomerAppCredentials, StartAdAppSetup, StartAdAppUpdate, StartCloudAccountOauth, StartDisableCloudAccountJob, StartExportSqlDatabaseDbJob, StartExportSqlManagedInstanceDbJob, UnmapCloudAccountExocomputeSubscription, UnmapPersistentStorageSubscription, UpdateAccount, UpdateAutomaticTargetMapping, UpdateCloudAccount, UpdateCloudNativeRcvStorageSetting, UpdateCloudNativeStorageSetting, UpdateCustomerAppPermissionForSql, UpdateTarget, UpdateTenantForSubscription, UpgradeCloudAccount, or UpgradeCloudAccountPermissionsWithoutOauth. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAzure -AddCloudAccount).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAzure -AddCloudAccount).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationAzure</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddCloudAccountExocomputeConfigurations</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddCloudAccountWithoutOauth</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BackupAdDirectory</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CompleteAdAppSetup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CompleteAdAppUpdate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CompleteCloudAccountOauth</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateAutomaticTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCloudNativeRcvStorageSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCloudNativeStorageSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateSaasAppAad</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteAdDirectory</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCloudAccountExocomputeConfigurations</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCloudAccountWithoutOauth</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MapCloudAccountExocomputeSubscription</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MapCloudAccountToPersistentStorageLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OauthConsentComplete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OauthConsentKickoff</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreAdObjectsWithPasswords</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetCloudAccountCustomerAppCredentials</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartAdAppSetup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartAdAppUpdate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartCloudAccountOauth</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartDisableCloudAccountJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartExportSqlDatabaseDbJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartExportSqlManagedInstanceDbJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UnmapCloudAccountExocomputeSubscription</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UnmapPersistentStorageSubscription</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAutomaticTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCloudNativeRcvStorageSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCloudNativeStorageSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCustomerAppPermissionForSql</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTenantForSubscription</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeCloudAccountPermissionsWithoutOauth</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AddCloudAccount
              
             $query = New-RscMutationAzure -AddCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # REQUIRED
                 tenantDomainName = $someString
                 # REQUIRED
                 subscriptions = @(
                     @{
                         # REQUIRED
                         features = @(
                             @{
                                 # OPTIONAL
                                 resourceGroup = @{
                                     # REQUIRED
                                     name = $someString
                                     # OPTIONAL
                                     tags = @{
                                         # REQUIRED
                                         tagList = @(
                                             @{
                                                 # REQUIRED
                                                 key = $someString
                                                 # REQUIRED
                                                 value = $someString
                                             }
                                         )
                                     }
                                     # REQUIRED
                                     region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                                 }
                                 # REQUIRED
                                 featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                                 # OPTIONAL
                                 permissionsGroups = @(
                                     $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                                 )
                             }
                         )
                         # REQUIRED
                         subscription = @{
                             # REQUIRED
                             nativeId = $someString
                             # REQUIRED
                             name = $someString
                         }
                     }
                 )
                 # REQUIRED
                 regions = @(
                     $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddAzureCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddCloudAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AddCloudAccountExocomputeConfigurations
              
             $query = New-RscMutationAzure -AddCloudAccountExocomputeConfigurations
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 azureExocomputeRegionConfigs = @(
                     @{
                         # REQUIRED
                         region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                         # REQUIRED
                         subnetNativeId = $someString
                         # REQUIRED
                         isRscManaged = $someBoolean
                         # OPTIONAL
                         podSubnetNativeId = $someString
                         # OPTIONAL
                         podOverlayNetworkCidr = $someString
                     }
                 )
                 # OPTIONAL
                 triggerHealthCheck = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddAzureCloudAccountExocomputeConfigurationsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddCloudAccountExocomputeConfigurations operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AddCloudAccountWithoutOauth
              
             $query = New-RscMutationAzure -AddCloudAccountWithoutOauth
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 tenantDomainName = $someString
                 # REQUIRED
                 subscriptions = @(
                     @{
                         # REQUIRED
                         features = @(
                             @{
                                 # REQUIRED
                                 policyVersion = $someInt
                                 # OPTIONAL
                                 resourceGroup = @{
                                     # REQUIRED
                                     name = $someString
                                     # OPTIONAL
                                     tags = @{
                                         # REQUIRED
                                         tagList = @(
                                             @{
                                                 # REQUIRED
                                                 key = $someString
                                                 # REQUIRED
                                                 value = $someString
                                             }
                                         )
                                     }
                                     # REQUIRED
                                     region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                                 }
                                 # OPTIONAL
                                 specificFeatureInput = @{
                                     # REQUIRED
                                     userAssignedManagedIdentityInput = @{
                                         # REQUIRED
                                         name = $someString
                                         # REQUIRED
                                         resourceGroupName = $someString
                                         # REQUIRED
                                         principalId = $someString
                                         # REQUIRED
                                         region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                                     }
                                 }
                                 # REQUIRED
                                 featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                                 # OPTIONAL
                                 permissionsGroups = @(
                                     @{
                                         # REQUIRED
                                         permissionsGroup = $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                                         # OPTIONAL
                                         version = $someInt
                                     }
                                 )
                             }
                         )
                         # REQUIRED
                         subscription = @{
                             # REQUIRED
                             nativeId = $someString
                             # REQUIRED
                             name = $someString
                         }
                     }
                 )
                 # REQUIRED
                 regions = @(
                     $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                 )
                 # OPTIONAL
                 azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddAzureCloudAccountWithoutOauthReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddCloudAccountWithoutOauth operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: BackupAdDirectory
              
             $query = New-RscMutationAzure -BackupAdDirectory
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadFids = @(
                     $someString
                 )
                 # OPTIONAL
                 snapshotRetentionSlaId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupAdDirectory operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CompleteAdAppSetup
              
             $query = New-RscMutationAzure -CompleteAdAppSetup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 domainName = $someString
                 # REQUIRED
                 stateToken = $someString
                 # OPTIONAL
                 kmsSpec = @{
                     # OPTIONAL
                     cloudType = $someO365AzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365AzureCloudType]) for enum values.
                     # OPTIONAL
                     tenantId = $someString
                     # OPTIONAL
                     kmsId = $someString
                     # OPTIONAL
                     appId = $someString
                     # OPTIONAL
                     appSecret = $someString
                     # OPTIONAL
                     keyName = $someString
                     # OPTIONAL
                     kekNameColossus = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CompleteAzureAdAppSetupReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CompleteAdAppSetup operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CompleteAdAppUpdate
              
             $query = New-RscMutationAzure -CompleteAdAppUpdate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadFid = $someString
                 # REQUIRED
                 stateToken = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CompleteAdAppUpdate operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CompleteCloudAccountOauth
              
             $query = New-RscMutationAzure -CompleteCloudAccountOauth
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # REQUIRED
                 tenantDomainName = $someString
                 # REQUIRED
                 authorizationCode = $someString
                 # REQUIRED
                 redirectUrl = $someString
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 appId = $someString
                 # OPTIONAL
                 appSecretKey = $someString
                 # REQUIRED
                 shouldSkipPermissionChecks = $someBoolean
                 # OPTIONAL
                 azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values.
                 # OPTIONAL
                 resource = $someAzureOauthResource # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureOauthResource]) for enum values.
                 # OPTIONAL
                 performBasicOauth = $someBoolean
                 # OPTIONAL
                 shouldKeepRefreshToken = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CompleteAzureCloudAccountOauthReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CompleteCloudAccountOauth operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateAccount
              
             $query = New-RscMutationAzure -CreateAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # REQUIRED
                 subscriptionId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudAccount</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateAutomaticTargetMapping
              
             $query = New-RscMutationAzure -CreateAutomaticTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 storageAccountName = $someString
                 # REQUIRED
                 accessKey = $someString
                 # REQUIRED
                 containerNamePrefix = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values.
                 # REQUIRED
                 rsaKey = $someString
                 # OPTIONAL
                 computeSettings = @{
                     # OPTIONAL
                     appId = $someString
                     # OPTIONAL
                     appSecretKey = $someString
                     # OPTIONAL
                     region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                     # OPTIONAL
                     generalPurposeStorageName = $someString
                     # OPTIONAL
                     generalPurposeStorageContainer = $someString
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     virtualNetworkId = $someString
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                     # OPTIONAL
                     cloudAccountId = $someString
                     # OPTIONAL
                     subscriptionId = $someString
                 }
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAutomaticTargetMapping operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateCloudNativeRcvStorageSetting
              
             $query = New-RscMutationAzure -CreateCloudNativeRcvStorageSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                 # OPTIONAL
                 tier = $someAzureStorageTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureStorageTier]) for enum values.
                 # REQUIRED
                 cloudNativeLocTemplateType = $someCloudNativeLocTemplateType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLocTemplateType]) for enum values.
                 # OPTIONAL
                 redundancy = $someRcvRedundancy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcvRedundancy]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateCloudNativeRcvAzureStorageSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCloudNativeRcvStorageSetting operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateCloudNativeStorageSetting
              
             $query = New-RscMutationAzure -CreateCloudNativeStorageSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 storageAccountName = $someString
                 # REQUIRED
                 containerName = $someString
                 # OPTIONAL
                 storageAccountTags = @{
                     # REQUIRED
                     tagList = @(
                         @{
                             # REQUIRED
                             key = $someString
                             # REQUIRED
                             value = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 storageAccountRegion = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                 # REQUIRED
                 storageTier = $someAzureStorageTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureStorageTier]) for enum values.
                 # REQUIRED
                 redundancy = $someAzureRedundancy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRedundancy]) for enum values.
                 # REQUIRED
                 subscriptionNativeId = $someString
                 # REQUIRED
                 cloudNativeLocTemplateType = $someCloudNativeLocTemplateType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLocTemplateType]) for enum values.
                 # OPTIONAL
                 cmkInfo = @(
                     @{
                         # OPTIONAL
                         keyVaultName = $someString
                         # OPTIONAL
                         keyName = $someString
                         # OPTIONAL
                         region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                     }
                 )
                 # OPTIONAL
                 azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateCloudNativeAzureStorageSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCloudNativeStorageSetting operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateCluster
              
             $query = New-RscMutationAzure -CreateCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 isEsType = $someBoolean
                 # OPTIONAL
                 keepClusterOnFailure = $someBoolean
                 # OPTIONAL
                 clusterConfig = @{
                     # OPTIONAL
                     userEmail = $someString
                     # OPTIONAL
                     adminPassword = $someString
                     # OPTIONAL
                     clusterName = $someString
                     # OPTIONAL
                     numNodes = $someInt
                     # OPTIONAL
                     dnsSearchDomains = @(
                         $someString
                     )
                     # OPTIONAL
                     dnsNameServers = @(
                         $someString
                     )
                     # OPTIONAL
                     ntpServers = @(
                         $someString
                     )
                     # OPTIONAL
                     azureEsConfig = @{
                         # OPTIONAL
                         storageAccount = $someString
                         # OPTIONAL
                         resourceGroup = $someString
                         # OPTIONAL
                         storageSecret = $someString
                         # OPTIONAL
                         containerName = $someString
                         # OPTIONAL
                         shouldCreateContainer = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                         # OPTIONAL
                         managedIdentity = @{
                             # OPTIONAL
                             name = $someString
                             # OPTIONAL
                             clientId = $someString
                             # OPTIONAL
                             resourceGroup = $someString
                         }
                     }
                     # OPTIONAL
                     awsEsConfig = @{
                         # OPTIONAL
                         bucketName = $someString
                         # OPTIONAL
                         shouldCreateBucket = $someBoolean
                         # OPTIONAL
                         enableObjectLock = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                     }
                 }
                 # OPTIONAL
                 vmConfig = @{
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     cdmVersion = $someString
                     # OPTIONAL
                     location = $someString
                     # OPTIONAL
                     nodeSizeGb = $someInt
                     # OPTIONAL
                     networkResourceGroup = $someString
                     # OPTIONAL
                     vnetResourceGroup = $someString
                     # OPTIONAL
                     networkSecurityGroup = $someString
                     # OPTIONAL
                     networkSecurityResourceGroup = $someString
                     # OPTIONAL
                     vnet = $someString
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     tags = $someString
                     # OPTIONAL
                     vmImage = $someString
                     # OPTIONAL
                     cdmProduct = $someString
                     # OPTIONAL
                     availabilityZone = $someString
                     # OPTIONAL
                     vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values.
                     # OPTIONAL
                     instanceType = $someAzureInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureInstanceType]) for enum values.
                 }
                 # OPTIONAL
                 validations = @(
                     $someClusterCreateValidations # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCreateValidations]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CcProvisionJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCluster operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateReaderTarget
              
             $query = New-RscMutationAzure -CreateReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 storageAccountName = $someString
                 # REQUIRED
                 accessKey = $someString
                 # REQUIRED
                 containerName = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values.
                 # OPTIONAL
                 rsaKey = $someString
                 # OPTIONAL
                 computeSettings = @{
                     # OPTIONAL
                     appId = $someString
                     # OPTIONAL
                     appSecretKey = $someString
                     # OPTIONAL
                     region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                     # OPTIONAL
                     generalPurposeStorageName = $someString
                     # OPTIONAL
                     generalPurposeStorageContainer = $someString
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     virtualNetworkId = $someString
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                     # OPTIONAL
                     cloudAccountId = $someString
                     # OPTIONAL
                     subscriptionId = $someString
                 }
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     lockDurationDays = $someInt
                 }
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
                 # OPTIONAL
                 retrievalTier = $someAzureRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRetrievalTier]) for enum values.
                 # REQUIRED
                 bypassProxy = $someBoolean
                 # OPTIONAL
                 azureKeyVaultKey = @{
                     # REQUIRED
                     kmsKeyVaultId = $someString
                     # REQUIRED
                     keyName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateReaderTarget operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateSaasAppAad
              
             $query = New-RscMutationAzure -CreateSaasAppAad
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateAzureSaasAppAadReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateSaasAppAad operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CreateTarget
              
             $query = New-RscMutationAzure -CreateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 storageAccountName = $someString
                 # REQUIRED
                 accessKey = $someString
                 # REQUIRED
                 containerName = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values.
                 # OPTIONAL
                 rsaKey = $someString
                 # OPTIONAL
                 computeSettings = @{
                     # OPTIONAL
                     appId = $someString
                     # OPTIONAL
                     appSecretKey = $someString
                     # OPTIONAL
                     region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                     # OPTIONAL
                     generalPurposeStorageName = $someString
                     # OPTIONAL
                     generalPurposeStorageContainer = $someString
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     virtualNetworkId = $someString
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                     # OPTIONAL
                     cloudAccountId = $someString
                     # OPTIONAL
                     subscriptionId = $someString
                 }
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     lockDurationDays = $someInt
                 }
                 # OPTIONAL
                 retrievalTier = $someAzureRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRetrievalTier]) for enum values.
                 # REQUIRED
                 bypassProxy = $someBoolean
                 # OPTIONAL
                 azureKeyVaultKey = @{
                     # REQUIRED
                     kmsKeyVaultId = $someString
                     # REQUIRED
                     keyName = $someString
                     # REQUIRED
                     keyVersion = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateTarget operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: DeleteAdDirectory
              
             $query = New-RscMutationAzure -DeleteAdDirectory
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadFid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteAdDirectory operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: DeleteCloudAccount
              
             $query = New-RscMutationAzure -DeleteCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # REQUIRED
                 azureSubscriptionRubrikIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DeleteAzureCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCloudAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: DeleteCloudAccountExocomputeConfigurations
              
             $query = New-RscMutationAzure -DeleteCloudAccountExocomputeConfigurations
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DeleteAzureCloudAccountExocomputeConfigurationsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCloudAccountExocomputeConfigurations operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: DeleteCloudAccountWithoutOauth
              
             $query = New-RscMutationAzure -DeleteCloudAccountWithoutOauth
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # REQUIRED
                 azureSubscriptionRubrikIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DeleteAzureCloudAccountWithoutOauthReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCloudAccountWithoutOauth operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: MapCloudAccountExocomputeSubscription
              
             $query = New-RscMutationAzure -MapCloudAccountExocomputeSubscription
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountIds = @(
                     $someString
                 )
                 # REQUIRED
                 exocomputeCloudAccountId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MapAzureCloudAccountExocomputeSubscriptionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the MapCloudAccountExocomputeSubscription operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: MapCloudAccountToPersistentStorageLocation
              
             $query = New-RscMutationAzure -MapCloudAccountToPersistentStorageLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountIds = @(
                     $someString
                 )
                 # REQUIRED
                 persistentStorageId = $someString
                 # REQUIRED
                 azureNativeProtectionFeature = $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MapAzureCloudAccountToPersistentStorageLocationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the MapCloudAccountToPersistentStorageLocation operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: OauthConsentComplete
              
             $query = New-RscMutationAzure -OauthConsentComplete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 tenantId = $someString
                 # REQUIRED
                 code = $someString
                 # REQUIRED
                 stateToken = $someString
                 # REQUIRED
                 redirectUrl = $someString
                 # OPTIONAL
                 azureAppId = $someString
                 # OPTIONAL
                 azureAppSecret = $someString
                 # REQUIRED
                 azureCloudType = $someO365AzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365AzureCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the OauthConsentComplete operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: OauthConsentKickoff
              
             $query = New-RscMutationAzure -OauthConsentKickoff
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureOauthConsentKickoffReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the OauthConsentKickoff operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: RestoreAdObjectsWithPasswords
              
             $query = New-RscMutationAzure -RestoreAdObjectsWithPasswords
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadFid = $someString
                 # REQUIRED
                 snapshotFid = $someString
                 # REQUIRED
                 passwordByUserIdMap = @(
                     @{
                         # REQUIRED
                         userId = $someString
                         # REQUIRED
                         password = $someString
                     }
                 )
                 # REQUIRED
                 objectTypeToIdMap = @(
                     @{
                         # REQUIRED
                         objectId = $someString
                         # REQUIRED
                         azureAdObjectType = $someAzureAdObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdObjectType]) for enum values.
                     }
                 )
                 # REQUIRED
                 forceChangePasswordWithMfa = $someBoolean
                 # REQUIRED
                 relationshipRestoreMode = $someAzureAdRelationshipRestoreModeEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdRelationshipRestoreModeEnumType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RestoreAzureAdObjectsWithPasswordsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreAdObjectsWithPasswords operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SetCloudAccountCustomerAppCredentials
              
             $query = New-RscMutationAzure -SetCloudAccountCustomerAppCredentials
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 appId = $someString
                 # REQUIRED
                 appSecretKey = $someString
                 # OPTIONAL
                 appTenantId = $someString
                 # OPTIONAL
                 appName = $someString
                 # OPTIONAL
                 tenantDomainName = $someString
                 # REQUIRED
                 shouldReplace = $someBoolean
                 # REQUIRED
                 azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetCloudAccountCustomerAppCredentials operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StartAdAppSetup
              
             $query = New-RscMutationAzure -StartAdAppSetup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 domainName = $someString
                 # REQUIRED
                 region = $someAzureAdRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdRegion]) for enum values.
                 # OPTIONAL
                 azureAdApp = @{
                     # OPTIONAL
                     clientId = $someString
                     # OPTIONAL
                     clientSecret = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StartAzureAdAppSetupReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartAdAppSetup operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StartAdAppUpdate
              
             $query = New-RscMutationAzure -StartAdAppUpdate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadFid = $someString
                 # OPTIONAL
                 azureAdApp = @{
                     # OPTIONAL
                     clientId = $someString
                     # OPTIONAL
                     clientSecret = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StartAzureAdAppUpdateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartAdAppUpdate operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StartCloudAccountOauth
              
             $query = New-RscMutationAzure -StartCloudAccountOauth
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 tenantDomainName = $someString
                 # OPTIONAL
                 azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StartAzureCloudAccountOauthReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartCloudAccountOauth operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StartDisableCloudAccountJob
              
             $query = New-RscMutationAzure -StartDisableCloudAccountJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # REQUIRED
                 cloudAccountIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartDisableCloudAccountJob operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StartExportSqlDatabaseDbJob
              
             $query = New-RscMutationAzure -StartExportSqlDatabaseDbJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sourceDatabaseRubrikId = $someString
                 # REQUIRED
                 destinationDatabaseName = $someString
                 # OPTIONAL
                 destinationServerRubrikId = $someString
                 # OPTIONAL
                 elasticPoolName = $someString
                 # REQUIRED
                 shouldExportTags = $someBoolean
                 # OPTIONAL
                 azureSqlDatabaseDbPitExportInput = @{
                     # REQUIRED
                     restorePointInTime = $someDateTime
                     # OPTIONAL
                     dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values.
                 }
                 # OPTIONAL
                 azureSqlDatabaseDbLtrExportInput = @{
                     # REQUIRED
                     sourceSnapshotRubrikId = $someString
                     # REQUIRED
                     destinationResourceGroupName = $someString
                     # REQUIRED
                     destinationServerName = $someString
                     # REQUIRED
                     destinationRegionName = $someString
                     # OPTIONAL
                     dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values.
                 }
                 # OPTIONAL
                 persistentBackupExportInput = @{
                     # REQUIRED
                     sourceSnapshotRubrikId = $someString
                     # OPTIONAL
                     destinationServerCredentials = @{
                         # REQUIRED
                         login = $someString
                         # REQUIRED
                         password = $someString
                     }
                     # OPTIONAL
                     authMechanism = $someSqlAuthenticationMechanism # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SqlAuthenticationMechanism]) for enum values.
                     # OPTIONAL
                     sessionId = $someString
                     # OPTIONAL
                     dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values.
                 }
                 # OPTIONAL
                 serviceTier = $someString
                 # OPTIONAL
                 serviceObjectiveName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartExportSqlDatabaseDbJob operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StartExportSqlManagedInstanceDbJob
              
             $query = New-RscMutationAzure -StartExportSqlManagedInstanceDbJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sourceManagedInstanceDatabaseRubrikId = $someString
                 # OPTIONAL
                 destinationManagedInstanceRubrikId = $someString
                 # REQUIRED
                 destinationDatabaseName = $someString
                 # REQUIRED
                 destinationManagedInstanceName = $someString
                 # REQUIRED
                 destinationResourceGroupName = $someString
                 # OPTIONAL
                 azureSqlManagedInstanceDbPitExportInput = @{
                     # REQUIRED
                     restorePointInTime = $someDateTime
                 }
                 # OPTIONAL
                 azureSqlManagedInstanceDbLtrExportInput = @{
                     # REQUIRED
                     sourceSnapshotRubrikId = $someString
                     # REQUIRED
                     destinationRegionName = $someString
                 }
                 # OPTIONAL
                 persistentBackupExportInput = @{
                     # REQUIRED
                     sourceSnapshotRubrikId = $someString
                     # OPTIONAL
                     destinationServerCredentials = @{
                         # REQUIRED
                         login = $someString
                         # REQUIRED
                         password = $someString
                     }
                     # OPTIONAL
                     authMechanism = $someSqlAuthenticationMechanism # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SqlAuthenticationMechanism]) for enum values.
                     # OPTIONAL
                     sessionId = $someString
                     # OPTIONAL
                     dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values.
                 }
                 # OPTIONAL
                 serviceTier = $someString
                 # OPTIONAL
                 serviceObjectiveName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartExportSqlManagedInstanceDbJob operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 32 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UnmapCloudAccountExocomputeSubscription
              
             $query = New-RscMutationAzure -UnmapCloudAccountExocomputeSubscription
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UnmapAzureCloudAccountExocomputeSubscriptionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UnmapCloudAccountExocomputeSubscription operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 33 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UnmapPersistentStorageSubscription
              
             $query = New-RscMutationAzure -UnmapPersistentStorageSubscription
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 applicationCloudAccountIds = @(
                     $someString
                 )
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # REQUIRED
                 unmappingValidationType = $someUnmappingValidationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmappingValidationType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UnmapPersistentStorageSubscription operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 34 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateAccount
              
             $query = New-RscMutationAzure -UpdateAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 subscriptionId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudAccount</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 35 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateAutomaticTargetMapping
              
             $query = New-RscMutationAzure -UpdateAutomaticTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 storageAccountName = $someString
                 # OPTIONAL
                 accessKey = $someString
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 computeSettings = @{
                     # OPTIONAL
                     appId = $someString
                     # OPTIONAL
                     appSecretKey = $someString
                     # OPTIONAL
                     region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                     # OPTIONAL
                     generalPurposeStorageName = $someString
                     # OPTIONAL
                     generalPurposeStorageContainer = $someString
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     virtualNetworkId = $someString
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                     # OPTIONAL
                     cloudAccountId = $someString
                     # OPTIONAL
                     subscriptionId = $someString
                 }
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # OPTIONAL
                 isConsolidationEnabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAutomaticTargetMapping operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 36 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateCloudAccount
              
             $query = New-RscMutationAzure -UpdateCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 subscriptions = @(
                     @{
                         # OPTIONAL
                         id = $someString
                         # OPTIONAL
                         name = $someString
                     }
                 )
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 regionsToAdd = @(
                     $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                 )
                 # OPTIONAL
                 regionsToRemove = @(
                     $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateAzureCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCloudAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 37 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateCloudNativeRcvStorageSetting
              
             $query = New-RscMutationAzure -UpdateCloudNativeRcvStorageSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 name = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateCloudNativeRcvAzureStorageSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCloudNativeRcvStorageSetting operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 38 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateCloudNativeStorageSetting
              
             $query = New-RscMutationAzure -UpdateCloudNativeStorageSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 storageAccountTags = @{
                     # REQUIRED
                     tagList = @(
                         @{
                             # REQUIRED
                             key = $someString
                             # REQUIRED
                             value = $someString
                         }
                     )
                 }
                 # REQUIRED
                 storageTier = $someAzureStorageTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureStorageTier]) for enum values.
                 # OPTIONAL
                 cmkInfo = @(
                     @{
                         # OPTIONAL
                         keyVaultName = $someString
                         # OPTIONAL
                         keyName = $someString
                         # OPTIONAL
                         region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateCloudNativeAzureStorageSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCloudNativeStorageSetting operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 39 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateCustomerAppPermissionForSql
              
             $query = New-RscMutationAzure -UpdateCustomerAppPermissionForSql
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCustomerAppPermissionForSql operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 40 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateTarget
              
             $query = New-RscMutationAzure -UpdateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 storageAccountName = $someString
                 # OPTIONAL
                 accessKey = $someString
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 computeSettings = @{
                     # OPTIONAL
                     appId = $someString
                     # OPTIONAL
                     appSecretKey = $someString
                     # OPTIONAL
                     region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                     # OPTIONAL
                     generalPurposeStorageName = $someString
                     # OPTIONAL
                     generalPurposeStorageContainer = $someString
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     virtualNetworkId = $someString
                     # OPTIONAL
                     subnetId = $someString
                     # OPTIONAL
                     securityGroupId = $someString
                     # OPTIONAL
                     computeProxySettings = @{
                         # OPTIONAL
                         proxyServer = $someString
                         # OPTIONAL
                         portNumber = $someInt
                         # OPTIONAL
                         username = $someString
                         # OPTIONAL
                         password = $someString
                         # OPTIONAL
                         protocol = $someString
                     }
                     # OPTIONAL
                     cloudAccountId = $someString
                     # OPTIONAL
                     subscriptionId = $someString
                 }
                 # OPTIONAL
                 proxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 immutabilitySettings = @{
                     # OPTIONAL
                     lockDurationDays = $someInt
                 }
                 # OPTIONAL
                 retrievalTier = $someAzureRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRetrievalTier]) for enum values.
                 # REQUIRED
                 bypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTarget operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 41 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpdateTenantForSubscription
              
             $query = New-RscMutationAzure -UpdateTenantForSubscription
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 customerSubscriptionId = $someString
                 # REQUIRED
                 tenantDomainName = $someString
                 # REQUIRED
                 cloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTenantForSubscription operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 42 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpgradeCloudAccount
              
             $query = New-RscMutationAzure -UpgradeCloudAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # OPTIONAL
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 featuresToUpgrade = @(
                     @{
                         # REQUIRED
                         featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         # REQUIRED
                         permissionsGroups = @(
                             $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                         )
                     }
                 )
                 # REQUIRED
                 azureSubscriptionRubrikIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpgradeAzureCloudAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeCloudAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 43 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: UpgradeCloudAccountPermissionsWithoutOauth
              
             $query = New-RscMutationAzure -UpgradeCloudAccountPermissionsWithoutOauth
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # OPTIONAL
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # OPTIONAL
                 featureToUpgrade = @(
                     @{
                         # REQUIRED
                         featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         # REQUIRED
                         permissionsGroups = @(
                             $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpgradeAzureCloudAccountPermissionsWithoutOauthReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeCloudAccountPermissionsWithoutOauth operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationAzureNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationAzureNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'Azure Native' API domain: ExcludeManagedDisksFromSnapshot, StartCreateManagedDiskSnapshotsJob, StartCreateVirtualMachineSnapshotsJob, StartDisableSubscriptionProtectionJob, StartExportManagedDiskJob, StartExportVirtualMachineJob, StartRefreshSubscriptionsJob, or StartRestoreVirtualMachineJob.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationAzureNative creates a new mutation object for operations in the 'Azure Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Azure Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ExcludeManagedDisksFromSnapshot, StartCreateManagedDiskSnapshotsJob, StartCreateVirtualMachineSnapshotsJob, StartDisableSubscriptionProtectionJob, StartExportManagedDiskJob, StartExportVirtualMachineJob, StartRefreshSubscriptionsJob, or StartRestoreVirtualMachineJob. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAzureNative -ExcludeManagedDisksFromSnapshot).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAzureNative -ExcludeManagedDisksFromSnapshot).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationAzureNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ExcludeManagedDisksFromSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartCreateManagedDiskSnapshotsJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartCreateVirtualMachineSnapshotsJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartDisableSubscriptionProtectionJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartExportManagedDiskJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartExportVirtualMachineJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartRefreshSubscriptionsJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartRestoreVirtualMachineJob</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ExcludeManagedDisksFromSnapshot
              
             $query = New-RscMutationAzureNative -ExcludeManagedDisksFromSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 virtualMachineRubrikId = $someString
                 # REQUIRED
                 managedDiskExclusions = @(
                     @{
                         # REQUIRED
                         managedDiskRubrikId = $someString
                         # REQUIRED
                         isExcludedFromSnapshot = $someBoolean
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExcludeManagedDisksFromSnapshot operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StartCreateManagedDiskSnapshotsJob
              
             $query = New-RscMutationAzureNative -StartCreateManagedDiskSnapshotsJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 managedDiskRubrikIds = @(
                     $someString
                 )
                 # OPTIONAL
                 retentionSlaId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartCreateManagedDiskSnapshotsJob operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StartCreateVirtualMachineSnapshotsJob
              
             $query = New-RscMutationAzureNative -StartCreateVirtualMachineSnapshotsJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 virtualMachineRubrikIds = @(
                     $someString
                 )
                 # OPTIONAL
                 retentionSlaId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartCreateVirtualMachineSnapshotsJob operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StartDisableSubscriptionProtectionJob
              
             $query = New-RscMutationAzureNative -StartDisableSubscriptionProtectionJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 azureSubscriptionRubrikId = $someString
                 # REQUIRED
                 shouldDeleteNativeSnapshots = $someBoolean
                 # REQUIRED
                 azureNativeProtectionFeature = $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartDisableSubscriptionProtectionJob operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StartExportManagedDiskJob
              
             $query = New-RscMutationAzureNative -StartExportManagedDiskJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 diskName = $someString
                 # OPTIONAL
                 diskEncryptionSetNativeId = $someString
                 # REQUIRED
                 diskStorageTier = $someAzureNativeManagedDiskType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeManagedDiskType]) for enum values.
                 # REQUIRED
                 diskSize = $someInt
                 # REQUIRED
                 resourceGroup = $someString
                 # REQUIRED
                 destinationRegion = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                 # OPTIONAL
                 destinationAvailabilityZone = $someString
                 # OPTIONAL
                 destinationSubscriptionRubrikId = $someString
                 # REQUIRED
                 shouldExportTags = $someBoolean
                 # REQUIRED
                 shouldReplaceAttachedManagedDisk = $someBoolean
                 # OPTIONAL
                 shouldUseReplica = $someBoolean
                 # OPTIONAL
                 snapshotType = $someAzureSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSnapshotType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartExportManagedDiskJob operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StartExportVirtualMachineJob
              
             $query = New-RscMutationAzureNative -StartExportVirtualMachineJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 virtualMachineName = $someString
                 # OPTIONAL
                 diskEncryptionSetNativeId = $someString
                 # REQUIRED
                 resourceGroupName = $someString
                 # REQUIRED
                 destinationRegion = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                 # OPTIONAL
                 destinationAvailabilityZone = $someString
                 # OPTIONAL
                 destinationSubscriptionRubrikId = $someString
                 # REQUIRED
                 virtualMachineSize = $someString
                 # REQUIRED
                 subnetNativeId = $someString
                 # OPTIONAL
                 networkSecurityGroupNativeId = $someString
                 # REQUIRED
                 shouldExportTags = $someBoolean
                 # REQUIRED
                 shouldPowerOff = $someBoolean
                 # OPTIONAL
                 shouldUseReplica = $someBoolean
                 # OPTIONAL
                 availabilitySetNativeId = $someString
                 # OPTIONAL
                 shouldEnableAcceleratedNetworking = $someBoolean
                 # OPTIONAL
                 snapshotType = $someAzureSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSnapshotType]) for enum values.
                 # OPTIONAL
                 recoveryDiskIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartExportVirtualMachineJob operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StartRefreshSubscriptionsJob
              
             $query = New-RscMutationAzureNative -StartRefreshSubscriptionsJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 azureSubscriptionRubrikIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartRefreshSubscriptionsJob operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StartRestoreVirtualMachineJob
              
             $query = New-RscMutationAzureNative -StartRestoreVirtualMachineJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 shouldPowerOn = $someBoolean
                 # REQUIRED
                 shouldRestoreTags = $someBoolean
                 # OPTIONAL
                 snapshotTypeToUseIfSourceExpired = $someSnapshotTypeForRestoreIfSourceExpired # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeForRestoreIfSourceExpired]) for enum values.
                 # OPTIONAL
                 recoveryDiskIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartRestoreVirtualMachineJob operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationAzureO365</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationAzureO365</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'Azure Office365' API domain: ['SetupExocompute'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationAzureO365 creates a new mutation object for operations in the 'Azure Office365' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'Azure Office365' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['SetupExocompute']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAzureO365 -SetupExocompute).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAzureO365 -SetupExocompute).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationAzureO365</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">SetupExocompute</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: SetupExocompute
              
             $query = New-RscMutationAzureO365 -SetupExocompute
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.exocomputeConfig = @{
                 # REQUIRED
                 regionName = $someString
                 # OPTIONAL
                 newGroupConfig = @{
                     # OPTIONAL
                     name = $someString
                     # OPTIONAL
                     failoverGroupId = $someString
                 }
                 # OPTIONAL
                 existingGroupConfig = @{
                     # OPTIONAL
                     name = $someString
                     # OPTIONAL
                     failoverGroupId = $someString
                 }
                 # OPTIONAL
                 newComputeConfig = @{
                     # OPTIONAL
                     vnetName = $someString
                     # OPTIONAL
                     subnetName = $someString
                     # OPTIONAL
                     securityGroupName = $someString
                     # OPTIONAL
                     failoverVnetName = $someString
                     # OPTIONAL
                     failoverSubnetName = $someString
                     # OPTIONAL
                     failoverSecurityGroupName = $someString
                 }
                 # OPTIONAL
                 existingComputeConfig = @{
                     # OPTIONAL
                     vnetId = $someString
                     # OPTIONAL
                     subnetId = $someString
                 }
                 # OPTIONAL
                 newStorageAccountConfig = @{
                     # OPTIONAL
                     name = $someString
                     # OPTIONAL
                     tier = $someStorageAccountTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountTier]) for enum values.
                     # OPTIONAL
                     sku = $someStorageAccountSku # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountSku]) for enum values.
                     # OPTIONAL
                     storages = @(
                         @{
                             # OPTIONAL
                             name = $someString
                             # OPTIONAL
                             tier = $someStorageAccountTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountTier]) for enum values.
                             # OPTIONAL
                             sku = $someStorageAccountSku # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountSku]) for enum values.
                             # OPTIONAL
                             containerImmutabilityStatus = $someColossusStorageContainerImmutabilityStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ColossusStorageContainerImmutabilityStatus]) for enum values.
                             # OPTIONAL
                             versioningEnabled = $someBoolean
                         }
                     )
                 }
                 # OPTIONAL
                 existingStorageAccountConfig = @{
                     # OPTIONAL
                     id = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SetupAzureO365ExocomputeResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetupExocompute operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationCassandra</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationCassandra</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 5 operations in the 'Cassandra' API domain: BulkDeleteSources, CreateSource, DeleteSource, RecoverSource, or UpdateSource.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationCassandra creates a new mutation object for operations in the 'Cassandra' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 5 operations in the 'Cassandra' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkDeleteSources, CreateSource, DeleteSource, RecoverSource, or UpdateSource. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCassandra -BulkDeleteSources).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCassandra -BulkDeleteSources).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationCassandra</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkDeleteSources</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateSource</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: BulkDeleteSources
              
             $query = New-RscMutationCassandra -BulkDeleteSources
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 sourceType = $someV2BulkDeleteMosaicSourcesRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2BulkDeleteMosaicSourcesRequestSourceType]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceData = @{
                     # OPTIONAL
                     async = $someBoolean
                     # REQUIRED
                     sourceNames = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDeleteSources operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: CreateSource
              
             $query = New-RscMutationCassandra -CreateSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceData = @{
                     # OPTIONAL
                     async = $someBoolean
                     # OPTIONAL
                     cassandraYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     dseYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     enableSsl = $someBoolean
                     # OPTIONAL
                     httpsCertificate = $someString
                     # OPTIONAL
                     ignoreSecondaries = @(
                         $someString
                     )
                     # OPTIONAL
                     jmxPassword = $someString
                     # OPTIONAL
                     jmxUser = $someString
                     # OPTIONAL
                     parameterEncoded = $someBoolean
                     # OPTIONAL
                     sourceAuthKey = $someString
                     # OPTIONAL
                     sourceAuthKeyfile = $someString
                     # OPTIONAL
                     sourceAuthPassphrase = $someString
                     # OPTIONAL
                     sourceDriverPassword = $someString
                     # OPTIONAL
                     sourceDriverUser = $someString
                     # OPTIONAL
                     sourceHttpsPort = $someString
                     # OPTIONAL
                     sourcePassword = $someString
                     # OPTIONAL
                     sourcePort = $someString
                     # OPTIONAL
                     sourceRpcPort = $someString
                     # OPTIONAL
                     sourceSshPort = $someString
                     # OPTIONAL
                     sourceUser = $someString
                     # OPTIONAL
                     sslCaCerts = $someString
                     # OPTIONAL
                     sslCertfile = $someString
                     # OPTIONAL
                     sslKeyfile = $someString
                     # REQUIRED
                     sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values.
                     # OPTIONAL
                     sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values.
                     # REQUIRED
                     sourceIp = @(
                         $someString
                     )
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateSource operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: DeleteSource
              
             $query = New-RscMutationCassandra -DeleteSource
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 sourceType = $someV2DeleteMosaicSourceRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2DeleteMosaicSourceRequestSourceType]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSource operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: RecoverSource
              
             $query = New-RscMutationCassandra -RecoverSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 recoveryData = @{
                     # OPTIONAL
                     destinationSourceName = $someString
                     # OPTIONAL
                     keyspaceConfig = $someString
                     # OPTIONAL
                     maxDiskUsage = $someString
                     # OPTIONAL
                     restoreDbUserPwd = $someString
                     # OPTIONAL
                     restoreDbUsername = $someString
                     # OPTIONAL
                     startTimestamp = $someInt
                     # OPTIONAL
                     targetEncryptionKey = $someString
                     # OPTIONAL
                     targetQuery = $someString
                     # OPTIONAL
                     sourceType = $someMosaicRetrieveRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicRetrieveRequestSourceType]) for enum values.
                     # OPTIONAL
                     destinationManagementObjects = @{
                         # OPTIONAL
                         databases = @(
                             @{
                                 # OPTIONAL
                                 dbName = $someString
                                 # OPTIONAL
                                 tables = @(
                                     $someString
                                 )
                             }
                         )
                     }
                     # REQUIRED
                     destinationPath = $someString
                     # REQUIRED
                     managementObjects = @{
                         # OPTIONAL
                         databases = @(
                             @{
                                 # OPTIONAL
                                 dbName = $someString
                                 # OPTIONAL
                                 tables = @(
                                     $someString
                                 )
                             }
                         )
                     }
                     # REQUIRED
                     parameterEncoded = $someBoolean
                     # REQUIRED
                     sourceName = $someString
                     # REQUIRED
                     versionTime = $someInt
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverSource operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: UpdateSource
              
             $query = New-RscMutationCassandra -UpdateSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceData = @{
                     # OPTIONAL
                     async = $someBoolean
                     # OPTIONAL
                     cassandraYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     dseYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     enableSsl = $someBoolean
                     # OPTIONAL
                     httpsCertificate = $someString
                     # OPTIONAL
                     ignoreSecondaries = @(
                         $someString
                     )
                     # OPTIONAL
                     jmxPassword = $someString
                     # OPTIONAL
                     jmxUser = $someString
                     # OPTIONAL
                     parameterEncoded = $someBoolean
                     # OPTIONAL
                     sourceAuthKey = $someString
                     # OPTIONAL
                     sourceAuthKeyfile = $someString
                     # OPTIONAL
                     sourceAuthPassphrase = $someString
                     # OPTIONAL
                     sourceDriverPassword = $someString
                     # OPTIONAL
                     sourceDriverUser = $someString
                     # OPTIONAL
                     sourceHttpsPort = $someString
                     # OPTIONAL
                     sourcePassword = $someString
                     # OPTIONAL
                     sourcePort = $someString
                     # OPTIONAL
                     sourceRpcPort = $someString
                     # OPTIONAL
                     sourceSshPort = $someString
                     # OPTIONAL
                     sourceUser = $someString
                     # OPTIONAL
                     sslCaCerts = $someString
                     # OPTIONAL
                     sslCertfile = $someString
                     # OPTIONAL
                     sslKeyfile = $someString
                     # REQUIRED
                     sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values.
                     # OPTIONAL
                     sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values.
                     # REQUIRED
                     sourceIp = @(
                         $someString
                     )
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateSource operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationCertificate</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationCertificate</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 12 operations in the 'Certificates' API domain: AddClusterCertificate, AddGlobalCertificate, Delete, DeleteCsr, DeleteGlobalCertificate, GenerateCsr, MarkAgentSecondary, SetSso, SetWebSigned, Update, UpdateGlobalCertificate, or UpdateHost.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationCertificate creates a new mutation object for operations in the 'Certificates' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 12 operations in the 'Certificates' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddClusterCertificate, AddGlobalCertificate, Delete, DeleteCsr, DeleteGlobalCertificate, GenerateCsr, MarkAgentSecondary, SetSso, SetWebSigned, Update, UpdateGlobalCertificate, or UpdateHost. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCertificate -AddClusterCertificate).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCertificate -AddClusterCertificate).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationCertificate</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddClusterCertificate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddGlobalCertificate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Delete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCsr</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteGlobalCertificate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GenerateCsr</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MarkAgentSecondary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetSso</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetWebSigned</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Update</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateGlobalCertificate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateHost</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: AddClusterCertificate
              
             $query = New-RscMutationCertificate -AddClusterCertificate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 certImportRequest = @{
                     # OPTIONAL
                     csrId = $someString
                     # OPTIONAL
                     description = $someString
                     # OPTIONAL
                     privateKey = $someString
                     # OPTIONAL
                     isTrusted = $someBoolean
                     # REQUIRED
                     name = $someString
                     # REQUIRED
                     pemFile = $someString
                 }
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddClusterCertificateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddClusterCertificate operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: AddGlobalCertificate
              
             $query = New-RscMutationCertificate -AddGlobalCertificate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 privateKey = $someString
                 # REQUIRED
                 certificate = $someString
                 # OPTIONAL
                 clusters = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         isTrusted = $someBoolean
                     }
                 )
                 # OPTIONAL
                 csrFid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddGlobalCertificateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddGlobalCertificate operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: Delete
              
             $query = New-RscMutationCertificate -Delete
              
             # REQUIRED
             $query.Var.certificateId = $someInt64
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the Delete operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: DeleteCsr
              
             $query = New-RscMutationCertificate -DeleteCsr
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 csrFids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCsr operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: DeleteGlobalCertificate
              
             $query = New-RscMutationCertificate -DeleteGlobalCertificate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 certificateId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DeleteGlobalCertificateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteGlobalCertificate operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: GenerateCsr
              
             $query = New-RscMutationCertificate -GenerateCsr
              
             # REQUIRED
             $query.Var.name = $someString
             # REQUIRED
             $query.Var.hostnames = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.organization = $someString
             # OPTIONAL
             $query.Var.organizationUnit = $someString
             # OPTIONAL
             $query.Var.country = $someString
             # OPTIONAL
             $query.Var.state = $someString
             # OPTIONAL
             $query.Var.city = $someString
             # OPTIONAL
             $query.Var.email = $someString
             # OPTIONAL
             $query.Var.surname = $someString
             # OPTIONAL
             $query.Var.userId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Csr</dev:code>
        <dev:remarks>
          <maml:para>Runs the GenerateCsr operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: MarkAgentSecondary
              
             $query = New-RscMutationCertificate -MarkAgentSecondary
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 certId = $someString
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MarkAgentSecondaryCertificateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the MarkAgentSecondary operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: SetSso
              
             $query = New-RscMutationCertificate -SetSso
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 certificateId = $someInt
                 # REQUIRED
                 certificateType = $someSsoCertificateType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SsoCertificateType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetSso operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: SetWebSigned
              
             $query = New-RscMutationCertificate -SetWebSigned
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 certificatePayload = @{
                     # REQUIRED
                     certificateId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetWebSigned operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: Update
              
             $query = New-RscMutationCertificate -Update
              
             # REQUIRED
             $query.Var.certificateId = $someInt64
             # OPTIONAL
             $query.Var.name = $someString
             # OPTIONAL
             $query.Var.description = $someString
             # OPTIONAL
             $query.Var.certificate = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: UpdateGlobalCertificate
              
             $query = New-RscMutationCertificate -UpdateGlobalCertificate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 certificateId = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # REQUIRED
                 clusters = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         isTrusted = $someBoolean
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateGlobalCertificateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateGlobalCertificate operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: UpdateHost
              
             $query = New-RscMutationCertificate -UpdateHost
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateCertificateHostReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateHost operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationCloudAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationCloudAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 2 operations in the 'Cloud Account' API domain: MapExocomputeAccount, or UnmapExocomputeAccount.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationCloudAccount creates a new mutation object for operations in the 'Cloud Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 2 operations in the 'Cloud Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: MapExocomputeAccount, or UnmapExocomputeAccount. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCloudAccount -MapExocomputeAccount).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCloudAccount -MapExocomputeAccount).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationCloudAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">MapExocomputeAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UnmapExocomputeAccount</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: MapExocomputeAccount
              
             $query = New-RscMutationCloudAccount -MapExocomputeAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountIds = @(
                     $someString
                 )
                 # REQUIRED
                 exocomputeCloudAccountId = $someString
                 # REQUIRED
                 cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MapCloudAccountExocomputeAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the MapExocomputeAccount operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: UnmapExocomputeAccount
              
             $query = New-RscMutationCloudAccount -UnmapExocomputeAccount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountIds = @(
                     $someString
                 )
                 # REQUIRED
                 cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UnmapCloudAccountExocomputeAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UnmapExocomputeAccount operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationCloudNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationCloudNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 13 operations in the 'Cloud Native' API domain: AddSqlServerBackupCredentials, CheckRbaConnectivity, ClearSqlServerBackupCredentials, CreateLabelRule, CreateTagRule, DeleteLabelRule, DeleteTagRule, DownloadFiles, SetupSqlServerBackup, StartSnapshotsIndexJob, UpdateIndexingStatus, UpdateLabelRule, or UpdateTagRule.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationCloudNative creates a new mutation object for operations in the 'Cloud Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 13 operations in the 'Cloud Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddSqlServerBackupCredentials, CheckRbaConnectivity, ClearSqlServerBackupCredentials, CreateLabelRule, CreateTagRule, DeleteLabelRule, DeleteTagRule, DownloadFiles, SetupSqlServerBackup, StartSnapshotsIndexJob, UpdateIndexingStatus, UpdateLabelRule, or UpdateTagRule. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCloudNative -AddSqlServerBackupCredentials).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCloudNative -AddSqlServerBackupCredentials).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationCloudNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddSqlServerBackupCredentials</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckRbaConnectivity</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClearSqlServerBackupCredentials</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateLabelRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateTagRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteLabelRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteTagRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetupSqlServerBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartSnapshotsIndexJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateIndexingStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateLabelRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTagRule</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: AddSqlServerBackupCredentials
              
             $query = New-RscMutationCloudNative -AddSqlServerBackupCredentials
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 objectIds = @(
                     $someString
                 )
                 # REQUIRED
                 workloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                 # REQUIRED
                 backupCredentials = @{
                     # REQUIRED
                     login = $someString
                     # REQUIRED
                     password = $someString
                 }
                 # OPTIONAL
                 logicAppName = $someString
                 # OPTIONAL
                 logicAppApiKey = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddCloudNativeSqlServerBackupCredentialsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddSqlServerBackupCredentials operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CheckRbaConnectivity
              
             $query = New-RscMutationCloudNative -CheckRbaConnectivity
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudNativeCheckRbaConnectivityReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckRbaConnectivity operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: ClearSqlServerBackupCredentials
              
             $query = New-RscMutationCloudNative -ClearSqlServerBackupCredentials
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 objectIds = @(
                     $someString
                 )
                 # REQUIRED
                 workloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClearCloudNativeSqlServerBackupCredentialsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClearSqlServerBackupCredentials operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CreateLabelRule
              
             $query = New-RscMutationCloudNative -CreateLabelRule
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 objectType = $someCloudNativeLabelObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLabelObjectType]) for enum values.
                 # REQUIRED
                 labelRuleName = $someString
                 # REQUIRED
                 label = @{
                     # REQUIRED
                     labelKey = $someString
                     # REQUIRED
                     labelValue = $someString
                     # REQUIRED
                     matchAllValues = $someBoolean
                 }
                 # OPTIONAL
                 slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values.
                 # OPTIONAL
                 slaId = $someString
                 # OPTIONAL
                 cloudNativeAccountIds = @{
                     # OPTIONAL
                     awsNativeAccountIds = @(
                         $someString
                     )
                     # OPTIONAL
                     azureNativeSubscriptionIds = @(
                         $someString
                     )
                     # OPTIONAL
                     gcpNativeProjectIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 applyToAllCloudAccounts = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateCloudNativeLabelRuleReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateLabelRule operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CreateTagRule
              
             $query = New-RscMutationCloudNative -CreateTagRule
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 objectType = $someCloudNativeTagObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagObjectType]) for enum values.
                 # REQUIRED
                 tagRuleName = $someString
                 # REQUIRED
                 tag = @{
                     # REQUIRED
                     tagKey = $someString
                     # REQUIRED
                     tagValue = $someString
                     # REQUIRED
                     matchAllValues = $someBoolean
                 }
                 # OPTIONAL
                 slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values.
                 # OPTIONAL
                 slaId = $someString
                 # OPTIONAL
                 cloudNativeAccountIds = @{
                     # OPTIONAL
                     awsNativeAccountIds = @(
                         $someString
                     )
                     # OPTIONAL
                     azureNativeSubscriptionIds = @(
                         $someString
                     )
                     # OPTIONAL
                     gcpNativeProjectIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 applyToAllCloudAccounts = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateCloudNativeTagRuleReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateTagRule operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: DeleteLabelRule
              
             $query = New-RscMutationCloudNative -DeleteLabelRule
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ruleId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteLabelRule operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: DeleteTagRule
              
             $query = New-RscMutationCloudNative -DeleteTagRule
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ruleId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteTagRule operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: DownloadFiles
              
             $query = New-RscMutationCloudNative -DownloadFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 filePaths = @(
                     $someString
                 )
                 # OPTIONAL
                 snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values.
                 # REQUIRED
                 fileRecoveryLocationDetails = @{
                     # OPTIONAL
                     cloudDownloadLocationDetails = @{
                         # REQUIRED
                         downloadLocation = $someString
                         # REQUIRED
                         createDownloadLocation = $someBoolean
                         # OPTIONAL
                         tags = @(
                             @{
                                 # REQUIRED
                                 tagKey = $someString
                                 # REQUIRED
                                 tagValue = $someString
                                 # REQUIRED
                                 matchAllValues = $someBoolean
                             }
                         )
                     }
                     # OPTIONAL
                     vmDownloadLocationDetails = @{
                         # REQUIRED
                         id = $someString
                         # OPTIONAL
                         pathToRecover = $someString
                     }
                 }
                 # REQUIRED
                 downloadType = $someFileDownloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileDownloadType]) for enum values.
                 # OPTIONAL
                 exocomputeCloudNativeAccountId = $someString
                 # OPTIONAL
                 exocomputeRegion = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadFilesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadFiles operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: SetupSqlServerBackup
              
             $query = New-RscMutationCloudNative -SetupSqlServerBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 databaseIds = @(
                     $someString
                 )
                 # OPTIONAL
                 adminCredentials = @{
                     # REQUIRED
                     login = $someString
                     # REQUIRED
                     password = $someString
                 }
                 # OPTIONAL
                 authMechanism = $someSqlAuthenticationMechanism # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SqlAuthenticationMechanism]) for enum values.
                 # OPTIONAL
                 sessionId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetupSqlServerBackup operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: StartSnapshotsIndexJob
              
             $query = New-RscMutationCloudNative -StartSnapshotsIndexJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartSnapshotsIndexJob operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: UpdateIndexingStatus
              
             $query = New-RscMutationCloudNative -UpdateIndexingStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadIds = @(
                     $someString
                 )
                 # REQUIRED
                 isIndexingEnabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateCloudNativeIndexingStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateIndexingStatus operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: UpdateLabelRule
              
             $query = New-RscMutationCloudNative -UpdateLabelRule
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 labelRuleId = $someString
                 # REQUIRED
                 labelRuleName = $someString
                 # OPTIONAL
                 slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values.
                 # OPTIONAL
                 slaId = $someString
                 # OPTIONAL
                 cloudNativeAccountIds = @{
                     # OPTIONAL
                     awsNativeAccountIds = @(
                         $someString
                     )
                     # OPTIONAL
                     azureNativeSubscriptionIds = @(
                         $someString
                     )
                     # OPTIONAL
                     gcpNativeProjectIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 applyToAllCloudAccounts = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateLabelRule operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: UpdateTagRule
              
             $query = New-RscMutationCloudNative -UpdateTagRule
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 tagRuleId = $someString
                 # REQUIRED
                 tagRuleName = $someString
                 # OPTIONAL
                 slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values.
                 # OPTIONAL
                 slaId = $someString
                 # OPTIONAL
                 cloudNativeAccountIds = @{
                     # OPTIONAL
                     awsNativeAccountIds = @(
                         $someString
                     )
                     # OPTIONAL
                     azureNativeSubscriptionIds = @(
                         $someString
                     )
                     # OPTIONAL
                     gcpNativeProjectIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 applyToAllCloudAccounts = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTagRule operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationCluster</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationCluster</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 19 operations in the 'Cluster' API domain: AddClusterNodes, AddClusterRoute, AddNodesToCloud, DeleteClusterRoute, GenerateClusterRegistrationToken, MigrateCloudClusterDisks, RecoverCloud, RegisterCloud, ReleasePersistentExo, RemoveCdm, RemoveClusterNodes, RequestPersistentExo, SetMissingClusterStatus, UpdateClusterDefaultAddress, UpdateClusterLocation, UpdateClusterNtpServers, UpdateClusterPauseStatus, UpdateClusterSettings, or UpdatePreviewerClusterConfig.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationCluster creates a new mutation object for operations in the 'Cluster' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 19 operations in the 'Cluster' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddClusterNodes, AddClusterRoute, AddNodesToCloud, DeleteClusterRoute, GenerateClusterRegistrationToken, MigrateCloudClusterDisks, RecoverCloud, RegisterCloud, ReleasePersistentExo, RemoveCdm, RemoveClusterNodes, RequestPersistentExo, SetMissingClusterStatus, UpdateClusterDefaultAddress, UpdateClusterLocation, UpdateClusterNtpServers, UpdateClusterPauseStatus, UpdateClusterSettings, or UpdatePreviewerClusterConfig. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCluster -AddClusterNodes).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCluster -AddClusterNodes).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationCluster</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddClusterNodes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddClusterRoute</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddNodesToCloud</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteClusterRoute</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GenerateClusterRegistrationToken</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MigrateCloudClusterDisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverCloud</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterCloud</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ReleasePersistentExo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemoveCdm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemoveClusterNodes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RequestPersistentExo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetMissingClusterStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateClusterDefaultAddress</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateClusterLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateClusterNtpServers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateClusterPauseStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateClusterSettings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdatePreviewerClusterConfig</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: AddClusterNodes
              
             $query = New-RscMutationCluster -AddClusterNodes
              
             # REQUIRED
             $query.Var.AddClusterNodesInput = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 nodesMap = @(
                     @{
                         # OPTIONAL
                         key = $someString
                         # REQUIRED
                         value = @{
                             # OPTIONAL
                             dataIpConfig = @{
                                 # OPTIONAL
                                 vlan = $someInt
                                 # REQUIRED
                                 address = $someString
                                 # REQUIRED
                                 gateway = $someString
                                 # REQUIRED
                                 netmask = $someString
                             }
                             # REQUIRED
                             ipmiIpConfig = @{
                                 # OPTIONAL
                                 vlan = $someInt
                                 # REQUIRED
                                 address = $someString
                                 # REQUIRED
                                 gateway = $someString
                                 # REQUIRED
                                 netmask = $someString
                             }
                             # REQUIRED
                             managementIpConfig = @{
                                 # OPTIONAL
                                 vlan = $someInt
                                 # REQUIRED
                                 address = $someString
                                 # REQUIRED
                                 gateway = $someString
                                 # REQUIRED
                                 netmask = $someString
                             }
                             # OPTIONAL
                             vlanIpConfigs = @(
                                 @{
                                     # REQUIRED
                                     ip = $someString
                                     # REQUIRED
                                     vlan = $someInt
                                 }
                             )
                         }
                     }
                 )
                 # REQUIRED
                 request = @{
                     # OPTIONAL
                     encryptionPassword = $someString
                     # OPTIONAL
                     isIpv4ManualDiscoveryMode = $someBoolean
                     # OPTIONAL
                     isLinkLocalIpv4Mode = $someBoolean
                     # REQUIRED
                     ipmiPassword = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddClusterNodesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddClusterNodes operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: AddClusterRoute
              
             $query = New-RscMutationCluster -AddClusterRoute
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 routeConfig = @{
                     # REQUIRED
                     device = $someString
                     # REQUIRED
                     gateway = $someString
                     # REQUIRED
                     netmask = $someString
                     # REQUIRED
                     network = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddClusterRouteReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddClusterRoute operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: AddNodesToCloud
              
             $query = New-RscMutationCluster -AddNodesToCloud
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 numberOfNodes = $someInt
                 # OPTIONAL
                 awsImageId = $someString
                 # OPTIONAL
                 azureImageName = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 vendor = $someCcpVendorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CcpVendorType]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 shouldKeepResourcesOnFailure = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CcProvisionJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddNodesToCloud operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: DeleteClusterRoute
              
             $query = New-RscMutationCluster -DeleteClusterRoute
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 routeConfig = @{
                     # REQUIRED
                     netmask = $someString
                     # REQUIRED
                     network = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteClusterRoute operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: GenerateClusterRegistrationToken
              
             $query = New-RscMutationCluster -GenerateClusterRegistrationToken
              
             # OPTIONAL
             $query.Var.input = @{
                 # OPTIONAL
                 managedByPolaris = $someBoolean
                 # OPTIONAL
                 nodeConfigs = @(
                     @{
                         # OPTIONAL
                         id = $someString
                         # OPTIONAL
                         manufactureTime = $someDateTime
                         # OPTIONAL
                         serial = $someString
                         # OPTIONAL
                         systemUuid = $someString
                         # OPTIONAL
                         teleportToken = $someString
                         # OPTIONAL
                         clusterUuid = $someString
                         # OPTIONAL
                         platform = $someString
                         # OPTIONAL
                         capacity = $someString
                         # OPTIONAL
                         isEntitled = $someBoolean
                     }
                 )
                 # OPTIONAL
                 isOfflineRegistration = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterRegistrationToken</dev:code>
        <dev:remarks>
          <maml:para>Runs the GenerateClusterRegistrationToken operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: MigrateCloudClusterDisks
              
             $query = New-RscMutationCluster -MigrateCloudClusterDisks
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 vendor = $someCcpVendorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CcpVendorType]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CcProvisionJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the MigrateCloudClusterDisks operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: RecoverCloud
              
             $query = New-RscMutationCluster -RecoverCloud
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 adminPassword = $someString
                 # OPTIONAL
                 userEmail = $someString
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # OPTIONAL
                 azureEsResourceGroup = $someString
                 # OPTIONAL
                 azureVmConfig = @{
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     cdmVersion = $someString
                     # OPTIONAL
                     location = $someString
                     # OPTIONAL
                     nodeSizeGb = $someInt
                     # OPTIONAL
                     networkResourceGroup = $someString
                     # OPTIONAL
                     vnetResourceGroup = $someString
                     # OPTIONAL
                     networkSecurityGroup = $someString
                     # OPTIONAL
                     networkSecurityResourceGroup = $someString
                     # OPTIONAL
                     vnet = $someString
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     tags = $someString
                     # OPTIONAL
                     vmImage = $someString
                     # OPTIONAL
                     cdmProduct = $someString
                     # OPTIONAL
                     availabilityZone = $someString
                     # OPTIONAL
                     vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values.
                     # OPTIONAL
                     instanceType = $someAzureInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureInstanceType]) for enum values.
                 }
                 # OPTIONAL
                 awsVmConfig = @{
                     # OPTIONAL
                     cdmVersion = $someString
                     # OPTIONAL
                     nodeSizeGb = $someInt
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     tags = $someString
                     # OPTIONAL
                     imageId = $someString
                     # OPTIONAL
                     instanceProfileName = $someString
                     # OPTIONAL
                     cdmProduct = $someString
                     # OPTIONAL
                     vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values.
                     # OPTIONAL
                     securityGroups = @(
                         $someString
                     )
                     # OPTIONAL
                     instanceType = $someAwsInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsInstanceType]) for enum values.
                     # OPTIONAL
                     networkConfig = @(
                         @{
                             # OPTIONAL
                             availabilityZone = $someString
                             # OPTIONAL
                             subnet = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 awsRegion = $someString
                 # REQUIRED
                 shouldDisableAwsApiTermination = $someBoolean
                 # REQUIRED
                 shouldKeepClusterOnFailure = $someBoolean
                 # OPTIONAL
                 ntpServers = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CcProvisionJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverCloud operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: RegisterCloud
              
             $query = New-RscMutationCluster -RegisterCloud
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RegisterCloudClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterCloud operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: ReleasePersistentExo
              
             $query = New-RscMutationCluster -ReleasePersistentExo
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
                 # REQUIRED
                 exocomputeConfigId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ReleasePersistentExo operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: RemoveCdm
              
             $query = New-RscMutationCluster -RemoveCdm
              
             # REQUIRED
             $query.Var.clusterUUID = $someString
             # REQUIRED
             $query.Var.isForce = $someBoolean
             # OPTIONAL
             $query.Var.expireInDays = $someInt64
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveCdm operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: RemoveClusterNodes
              
             $query = New-RscMutationCluster -RemoveClusterNodes
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 nodeIds = @(
                     $someString
                 )
                 # OPTIONAL
                 useQuickDrain = $someBoolean
                 # REQUIRED
                 clusterUuid = $someString
                 # OPTIONAL
                 nodeMetadata = @(
                     @{
                         # OPTIONAL
                         nodeId = $someString
                         # OPTIONAL
                         chassisId = $someString
                         # OPTIONAL
                         platform = $someClusterNodePlatformType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterNodePlatformType]) for enum values.
                         # OPTIONAL
                         status = $someClusterNodeStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterNodeStatus]) for enum values.
                         # OPTIONAL
                         useQuickDrain = $someBoolean
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CcProvisionJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveClusterNodes operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: RequestPersistentExo
              
             $query = New-RscMutationCluster -RequestPersistentExo
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
                 # REQUIRED
                 exocomputeConfigId = $someString
                 # OPTIONAL
                 durationInDays = $someInt
                 # OPTIONAL
                 azureSpecificClusterParams = @{
                     # OPTIONAL
                     nodeType = $someString
                 }
                 # OPTIONAL
                 awsSpecificClusterParams = @{
                     # OPTIONAL
                     nodeKeypairName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestPersistentExoclusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RequestPersistentExo operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: SetMissingClusterStatus
              
             $query = New-RscMutationCluster -SetMissingClusterStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 disconnectedState = $someMissingClusterDisconnectedState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MissingClusterDisconnectedState]) for enum values.
                 # OPTIONAL
                 exclusionReason = $someString
                 # REQUIRED
                 uuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SetMissingClusterStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetMissingClusterStatus operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: UpdateClusterDefaultAddress
              
             $query = New-RscMutationCluster -UpdateClusterDefaultAddress
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # OPTIONAL
                 address = $someString
                 # OPTIONAL
                 port = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateClusterDefaultAddressReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateClusterDefaultAddress operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: UpdateClusterLocation
              
             $query = New-RscMutationCluster -UpdateClusterLocation
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.clusterLocation = @{
                 # REQUIRED
                 address = $someString
                 # REQUIRED
                 latitude = $someSingle
                 # REQUIRED
                 longitude = $someSingle
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Cluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateClusterLocation operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: UpdateClusterNtpServers
              
             $query = New-RscMutationCluster -UpdateClusterNtpServers
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 ntpServerConfigs = @(
                     @{
                         # REQUIRED
                         server = $someString
                         # OPTIONAL
                         symmetricKey = @{
                             # REQUIRED
                             key = $someString
                             # REQUIRED
                             keyId = $someInt
                             # REQUIRED
                             keyType = $someString
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateClusterNtpServers operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: UpdateClusterPauseStatus
              
             $query = New-RscMutationCluster -UpdateClusterPauseStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterUuids = @(
                     $someString
                 )
                 # OPTIONAL
                 togglePauseStatus = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateClusterPauseStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateClusterPauseStatus operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: UpdateClusterSettings
              
             $query = New-RscMutationCluster -UpdateClusterSettings
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUpdate = @{
                     # OPTIONAL
                     acceptedEulaVersion = $someString
                     # OPTIONAL
                     geolocation = @{
                         # REQUIRED
                         address = $someString
                     }
                     # OPTIONAL
                     name = $someString
                     # OPTIONAL
                     timezone = @{
                         # REQUIRED
                         timezone = $someClusterTimezoneType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTimezoneType]) for enum values.
                     }
                 }
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateClusterSettingsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateClusterSettings operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: UpdatePreviewerClusterConfig
              
             $query = New-RscMutationCluster -UpdatePreviewerClusterConfig
              
             # REQUIRED
             $query.Var.previewerClusterConfig = @{
                 # OPTIONAL
                 clusterId = $someString
                 # OPTIONAL
                 enabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Cluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdatePreviewerClusterConfig operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationCrossAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationCrossAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Cross Account' API domain: AddCrossAccountServiceConsumer, CreateCrossAccountPair, CreateCrossAccountRegOauthPayload, or DeleteCrossAccountPair.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationCrossAccount creates a new mutation object for operations in the 'Cross Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Cross Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddCrossAccountServiceConsumer, CreateCrossAccountPair, CreateCrossAccountRegOauthPayload, or DeleteCrossAccountPair. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCrossAccount -AddCrossAccountServiceConsumer).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCrossAccount -AddCrossAccountServiceConsumer).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationCrossAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddCrossAccountServiceConsumer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCrossAccountPair</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCrossAccountRegOauthPayload</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCrossAccountPair</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CrossAccount
             # API Operation: AddCrossAccountServiceConsumer
              
             $query = New-RscMutationCrossAccount -AddCrossAccountServiceConsumer
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 crossAccountId = $someString
                 # REQUIRED
                 fqdn = $someString
                 # REQUIRED
                 serviceConsumerSa = @{
                     # OPTIONAL
                     clientId = $someString
                     # OPTIONAL
                     clientSecret = $someString
                     # OPTIONAL
                     accessTokenUrl = $someString
                 }
                 # OPTIONAL
                 isRefresh = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddCrossAccountServiceConsumerReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddCrossAccountServiceConsumer operation of the 'Cross Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CrossAccount
             # API Operation: CreateCrossAccountPair
              
             $query = New-RscMutationCrossAccount -CreateCrossAccountPair
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 code = $someString
                 # REQUIRED
                 state = $someString
                 # REQUIRED
                 fqdn = $someString
                 # OPTIONAL
                 isRefresh = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCrossAccountPair operation of the 'Cross Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CrossAccount
             # API Operation: CreateCrossAccountRegOauthPayload
              
             $query = New-RscMutationCrossAccount -CreateCrossAccountRegOauthPayload
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 fqdn = $someString
                 # OPTIONAL
                 isRefresh = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateCrossAccountRegOauthPayloadReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCrossAccountRegOauthPayload operation of the 'Cross Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CrossAccount
             # API Operation: DeleteCrossAccountPair
              
             $query = New-RscMutationCrossAccount -DeleteCrossAccountPair
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 crossAccountId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCrossAccountPair operation of the 'Cross Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationDb2</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationDb2</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 13 operations in the 'Db2' API domain: AddInstance, ConfigureRestore, CreateOnDemandBackup, DeleteDatabase, DeleteInstance, DiscoverInstance, DownloadSnapshot, DownloadSnapshotV2, DownloadSnapshotsForPointInTimeRecovery, ExpireDownloadedSnapshots, PatchDatabase, PatchInstance, or RefreshDatabase.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationDb2 creates a new mutation object for operations in the 'Db2' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 13 operations in the 'Db2' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddInstance, ConfigureRestore, CreateOnDemandBackup, DeleteDatabase, DeleteInstance, DiscoverInstance, DownloadSnapshot, DownloadSnapshotV2, DownloadSnapshotsForPointInTimeRecovery, ExpireDownloadedSnapshots, PatchDatabase, PatchInstance, or RefreshDatabase. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationDb2 -AddInstance).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationDb2 -AddInstance).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationDb2</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ConfigureRestore</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOnDemandBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DiscoverInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshotV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshotsForPointInTimeRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExpireDownloadedSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PatchDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PatchInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshDatabase</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: AddInstance
              
             $query = New-RscMutationDb2 -AddInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 db2InstanceRequestConfig = @{
                     # REQUIRED
                     hostIds = @(
                         $someString
                     )
                     # REQUIRED
                     instanceName = $someString
                     # REQUIRED
                     password = $someString
                     # REQUIRED
                     username = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddDb2InstanceReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddInstance operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: ConfigureRestore
              
             $query = New-RscMutationDb2 -ConfigureRestore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 restoreConfig = @{
                     # OPTIONAL
                     expiryTimestamp = $someDateTime
                     # REQUIRED
                     hostIdsToAdd = @(
                         $someString
                     )
                     # REQUIRED
                     hostIdsToRemove = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2ConfigureRestoreResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ConfigureRestore operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: CreateOnDemandBackup
              
             $query = New-RscMutationDb2 -CreateOnDemandBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOnDemandBackup operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: DeleteDatabase
              
             $query = New-RscMutationDb2 -DeleteDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteDatabase operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: DeleteInstance
              
             $query = New-RscMutationDb2 -DeleteInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteInstance operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: DiscoverInstance
              
             $query = New-RscMutationDb2 -DiscoverInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DiscoverInstance operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: DownloadSnapshot
              
             $query = New-RscMutationDb2 -DownloadSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshot operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: DownloadSnapshotV2
              
             $query = New-RscMutationDb2 -DownloadSnapshotV2
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshotV2 operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: DownloadSnapshotsForPointInTimeRecovery
              
             $query = New-RscMutationDb2 -DownloadSnapshotsForPointInTimeRecovery
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 downloadConfig = @{
                     # OPTIONAL
                     pointInTime = $someDateTime
                     # REQUIRED
                     preferredLocationId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshotsForPointInTimeRecovery operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: ExpireDownloadedSnapshots
              
             $query = New-RscMutationDb2 -ExpireDownloadedSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # OPTIONAL
                 shouldExpireLogsOnly = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExpireDownloadedSnapshots operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: PatchDatabase
              
             $query = New-RscMutationDb2 -PatchDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 db2DatabaseConfig = @{
                     # OPTIONAL
                     backupParallelism = $someInt
                     # OPTIONAL
                     backupSessions = $someInt
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PatchDb2DatabaseReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PatchDatabase operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: PatchInstance
              
             $query = New-RscMutationDb2 -PatchInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 db2InstanceRequestConfig = @{
                     # OPTIONAL
                     hostIds = @(
                         $someString
                     )
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     instanceName = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PatchDb2InstanceReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PatchInstance operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: RefreshDatabase
              
             $query = New-RscMutationDb2 -RefreshDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshDatabase operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationDownload</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationDownload</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 19 operations in the 'Report Download' API domain: ActiveDirectorySnapshotFromLocation, AuditLogCsvAsync, ExchangeSnapshot, ExchangeSnapshotV2, FilesetSnapshot, FilesetSnapshotFromLocation, FromArchiveV2, ObjectFilesCsv, ObjectsListCsv, ReportCsvAsync, ReportPdfAsync, ResultsCsv, SapHanaSnapshot, SapHanaSnapshotFromLocation, SapHanaSnapshotsForPointInTimeRecovery, SnapshotResultsCsv, ThreatHuntCsv, VolumeGroupSnapshotFiles, or VolumeGroupSnapshotFromLocation.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationDownload creates a new mutation object for operations in the 'Report Download' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 19 operations in the 'Report Download' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ActiveDirectorySnapshotFromLocation, AuditLogCsvAsync, ExchangeSnapshot, ExchangeSnapshotV2, FilesetSnapshot, FilesetSnapshotFromLocation, FromArchiveV2, ObjectFilesCsv, ObjectsListCsv, ReportCsvAsync, ReportPdfAsync, ResultsCsv, SapHanaSnapshot, SapHanaSnapshotFromLocation, SapHanaSnapshotsForPointInTimeRecovery, SnapshotResultsCsv, ThreatHuntCsv, VolumeGroupSnapshotFiles, or VolumeGroupSnapshotFromLocation. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationDownload -ActiveDirectorySnapshotFromLocation).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationDownload -ActiveDirectorySnapshotFromLocation).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationDownload</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ActiveDirectorySnapshotFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AuditLogCsvAsync</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExchangeSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExchangeSnapshotV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FilesetSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FilesetSnapshotFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FromArchiveV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ObjectFilesCsv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ObjectsListCsv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ReportCsvAsync</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ReportPdfAsync</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResultsCsv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SapHanaSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SapHanaSnapshotFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SapHanaSnapshotsForPointInTimeRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotResultsCsv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ThreatHuntCsv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VolumeGroupSnapshotFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VolumeGroupSnapshotFromLocation</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ActiveDirectorySnapshotFromLocation
              
             $query = New-RscMutationDownload -ActiveDirectorySnapshotFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ActiveDirectorySnapshotFromLocation operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: AuditLogCsvAsync
              
             $query = New-RscMutationDownload -AuditLogCsvAsync
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 filters = @{
                     # OPTIONAL
                     activityObjectType = @(
                         $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     objectType = @(
                         $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     excludedObjectTypes = @(
                         $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     lastActivityStatus = @(
                         $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     lastActivityType = @(
                         $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     slaDomainId = @(
                         $someString
                     )
                     # OPTIONAL
                     clusterType = @(
                         $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     clusterId = @(
                         $someString
                     )
                     # OPTIONAL
                     timeRange = @{
                         # OPTIONAL
                         relativeTimeRange = @{
                             # REQUIRED
                             magnitude = $someInt
                             # REQUIRED
                             unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values.
                         }
                         # OPTIONAL
                         absoluteTimeRange = @{
                             # REQUIRED
                             start = $someDateTime
                             # REQUIRED
                             end = $someDateTime
                         }
                     }
                     # OPTIONAL
                     slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                     # OPTIONAL
                     orgId = @(
                         $someString
                     )
                     # OPTIONAL
                     managedId = @(
                         $someString
                     )
                     # OPTIONAL
                     isAnomaly = $someBoolean
                     # OPTIONAL
                     searchTerm = $someString
                     # OPTIONAL
                     complianceStatus = @(
                         $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     protectionStatus = @(
                         $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     failoverStatus = @(
                         $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values.
                     # OPTIONAL
                     source = @(
                         $someString
                     )
                     # OPTIONAL
                     targetSite = @(
                         $someString
                     )
                     # OPTIONAL
                     userAuditObjectType = @(
                         $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     userAuditType = @(
                         $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     userAuditStatus = @(
                         $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     replicationSource = @(
                         $someString
                     )
                     # OPTIONAL
                     clusterLocation = @(
                         $someString
                     )
                     # OPTIONAL
                     taskCategory = @(
                         $someString
                     )
                     # OPTIONAL
                     taskStatus = @(
                         $someString
                     )
                     # OPTIONAL
                     taskType = @(
                         $someString
                     )
                     # OPTIONAL
                     policyId = @(
                         $someString
                     )
                     # OPTIONAL
                     sonarObjectTypes = @(
                         $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     shouldApplyWhitelists = $someBoolean
                     # OPTIONAL
                     date = $someDateTime
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncDownloadReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AuditLogCsvAsync operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ExchangeSnapshot
              
             $query = New-RscMutationDownload -ExchangeSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExchangeSnapshot operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ExchangeSnapshotV2
              
             $query = New-RscMutationDownload -ExchangeSnapshotV2
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExchangeSnapshotV2 operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: FilesetSnapshot
              
             $query = New-RscMutationDownload -FilesetSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the FilesetSnapshot operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: FilesetSnapshotFromLocation
              
             $query = New-RscMutationDownload -FilesetSnapshotFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the FilesetSnapshotFromLocation operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: FromArchiveV2
              
             $query = New-RscMutationDownload -FromArchiveV2
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                 }
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 locationId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the FromArchiveV2 operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ObjectFilesCsv
              
             $query = New-RscMutationDownload -ObjectFilesCsv
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 filters = @{
                     # OPTIONAL
                     openAccessTypes = @(
                         $someOpenAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OpenAccessType]) for enum values.
                     )
                     # OPTIONAL
                     stalenessTypes = @(
                         $someStalenessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StalenessType]) for enum values.
                     )
                     # OPTIONAL
                     analyzerGroupIds = @(
                         $someString
                     )
                     # OPTIONAL
                     clusterIds = @(
                         $someString
                     )
                     # OPTIONAL
                     pathPrefix = $someString
                     # OPTIONAL
                     snappableTypes = @(
                         $someString
                     )
                     # OPTIONAL
                     searchText = $someString
                     # OPTIONAL
                     whitelistEnabled = $someBoolean
                     # OPTIONAL
                     fileCountTypes = @(
                         $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values.
                     )
                     # OPTIONAL
                     accessTypes = @(
                         $someAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AccessType]) for enum values.
                     )
                     # OPTIONAL
                     activityTypes = @(
                         $someActivityAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityAccessType]) for enum values.
                     )
                     # OPTIONAL
                     objectIds = @(
                         $someString
                     )
                     # OPTIONAL
                     inodeTypes = @(
                         $someInodeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InodeType]) for enum values.
                     )
                     # REQUIRED
                     objectTypes = @(
                         $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                     )
                 }
                 # REQUIRED
                 day = $someString
                 # REQUIRED
                 timezone = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ObjectFilesCsv operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ObjectsListCsv
              
             $query = New-RscMutationDownload -ObjectsListCsv
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 day = $someString
                 # REQUIRED
                 timezone = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ObjectsListCsv operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ReportCsvAsync
              
             $query = New-RscMutationDownload -ReportCsvAsync
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
                 # OPTIONAL
                 config = @{
                     # REQUIRED
                     name = $someString
                     # REQUIRED
                     focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                     # OPTIONAL
                     charts = @(
                         @{
                             # REQUIRED
                             name = $someString
                             # REQUIRED
                             focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                             # OPTIONAL
                             groupBy = @(
                                 $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                             )
                         }
                     )
                     # OPTIONAL
                     tables = @(
                         @{
                             # REQUIRED
                             name = $someString
                             # REQUIRED
                             focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                             # OPTIONAL
                             groupBy = @(
                                 $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                             )
                             # REQUIRED
                             selectedColumns = @(
                                 $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values.
                             )
                             # OPTIONAL
                             sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values.
                             # OPTIONAL
                             sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
                         }
                     )
                     # REQUIRED
                     filters = @{
                         # OPTIONAL
                         activityObjectType = @(
                             $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         objectType = @(
                             $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         excludedObjectTypes = @(
                             $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         lastActivityStatus = @(
                             $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         lastActivityType = @(
                             $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         slaDomainId = @(
                             $someString
                         )
                         # OPTIONAL
                         clusterType = @(
                             $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         clusterId = @(
                             $someString
                         )
                         # OPTIONAL
                         timeRange = @{
                             # OPTIONAL
                             relativeTimeRange = @{
                                 # REQUIRED
                                 magnitude = $someInt
                                 # REQUIRED
                                 unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values.
                             }
                             # OPTIONAL
                             absoluteTimeRange = @{
                                 # REQUIRED
                                 start = $someDateTime
                                 # REQUIRED
                                 end = $someDateTime
                             }
                         }
                         # OPTIONAL
                         slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                         # OPTIONAL
                         orgId = @(
                             $someString
                         )
                         # OPTIONAL
                         managedId = @(
                             $someString
                         )
                         # OPTIONAL
                         isAnomaly = $someBoolean
                         # OPTIONAL
                         searchTerm = $someString
                         # OPTIONAL
                         complianceStatus = @(
                             $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         protectionStatus = @(
                             $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         failoverStatus = @(
                             $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values.
                         # OPTIONAL
                         source = @(
                             $someString
                         )
                         # OPTIONAL
                         targetSite = @(
                             $someString
                         )
                         # OPTIONAL
                         userAuditObjectType = @(
                             $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         userAuditType = @(
                             $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         userAuditStatus = @(
                             $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         replicationSource = @(
                             $someString
                         )
                         # OPTIONAL
                         clusterLocation = @(
                             $someString
                         )
                         # OPTIONAL
                         taskCategory = @(
                             $someString
                         )
                         # OPTIONAL
                         taskStatus = @(
                             $someString
                         )
                         # OPTIONAL
                         taskType = @(
                             $someString
                         )
                         # OPTIONAL
                         policyId = @(
                             $someString
                         )
                         # OPTIONAL
                         sonarObjectTypes = @(
                             $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         shouldApplyWhitelists = $someBoolean
                         # OPTIONAL
                         date = $someDateTime
                     }
                     # OPTIONAL
                     isHidden = $someBoolean
                     # OPTIONAL
                     isReadOnly = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncDownloadReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ReportCsvAsync operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ReportPdfAsync
              
             $query = New-RscMutationDownload -ReportPdfAsync
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
                 # OPTIONAL
                 config = @{
                     # REQUIRED
                     name = $someString
                     # REQUIRED
                     focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                     # OPTIONAL
                     charts = @(
                         @{
                             # REQUIRED
                             name = $someString
                             # REQUIRED
                             focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                             # OPTIONAL
                             groupBy = @(
                                 $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                             )
                         }
                     )
                     # OPTIONAL
                     tables = @(
                         @{
                             # REQUIRED
                             name = $someString
                             # REQUIRED
                             focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                             # OPTIONAL
                             groupBy = @(
                                 $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                             )
                             # REQUIRED
                             selectedColumns = @(
                                 $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values.
                             )
                             # OPTIONAL
                             sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values.
                             # OPTIONAL
                             sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
                         }
                     )
                     # REQUIRED
                     filters = @{
                         # OPTIONAL
                         activityObjectType = @(
                             $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         objectType = @(
                             $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         excludedObjectTypes = @(
                             $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         lastActivityStatus = @(
                             $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         lastActivityType = @(
                             $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         slaDomainId = @(
                             $someString
                         )
                         # OPTIONAL
                         clusterType = @(
                             $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         clusterId = @(
                             $someString
                         )
                         # OPTIONAL
                         timeRange = @{
                             # OPTIONAL
                             relativeTimeRange = @{
                                 # REQUIRED
                                 magnitude = $someInt
                                 # REQUIRED
                                 unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values.
                             }
                             # OPTIONAL
                             absoluteTimeRange = @{
                                 # REQUIRED
                                 start = $someDateTime
                                 # REQUIRED
                                 end = $someDateTime
                             }
                         }
                         # OPTIONAL
                         slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                         # OPTIONAL
                         orgId = @(
                             $someString
                         )
                         # OPTIONAL
                         managedId = @(
                             $someString
                         )
                         # OPTIONAL
                         isAnomaly = $someBoolean
                         # OPTIONAL
                         searchTerm = $someString
                         # OPTIONAL
                         complianceStatus = @(
                             $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         protectionStatus = @(
                             $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         failoverStatus = @(
                             $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values.
                         # OPTIONAL
                         source = @(
                             $someString
                         )
                         # OPTIONAL
                         targetSite = @(
                             $someString
                         )
                         # OPTIONAL
                         userAuditObjectType = @(
                             $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         userAuditType = @(
                             $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         userAuditStatus = @(
                             $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         replicationSource = @(
                             $someString
                         )
                         # OPTIONAL
                         clusterLocation = @(
                             $someString
                         )
                         # OPTIONAL
                         taskCategory = @(
                             $someString
                         )
                         # OPTIONAL
                         taskStatus = @(
                             $someString
                         )
                         # OPTIONAL
                         taskType = @(
                             $someString
                         )
                         # OPTIONAL
                         policyId = @(
                             $someString
                         )
                         # OPTIONAL
                         sonarObjectTypes = @(
                             $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         shouldApplyWhitelists = $someBoolean
                         # OPTIONAL
                         date = $someDateTime
                     }
                     # OPTIONAL
                     isHidden = $someBoolean
                     # OPTIONAL
                     isReadOnly = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncDownloadReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ReportPdfAsync operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ResultsCsv
              
             $query = New-RscMutationDownload -ResultsCsv
              
             # REQUIRED
             $query.Var.crawlId = $someString
             # OPTIONAL
             $query.Var.downloadFilter = @{
                 # OPTIONAL
                 analyzerGroupIds = @(
                     $someString
                 )
                 # OPTIONAL
                 browseDirectorySnappablePath = @{
                     # OPTIONAL
                     snappableFid = $someString
                     # OPTIONAL
                     stdPath = $someString
                 }
                 # OPTIONAL
                 listFileResultsSnappablePaths = @(
                     @{
                         # OPTIONAL
                         snappableFid = $someString
                         # OPTIONAL
                         stdPath = $someString
                     }
                 )
                 # OPTIONAL
                 listFileResultsSnappableTypes = @(
                     $someString
                 )
                 # OPTIONAL
                 listFileResultsSearchText = $someString
                 # OPTIONAL
                 whitelistEnabled = $someBoolean
                 # REQUIRED
                 fileType = $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadResultsCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResultsCsv operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: SapHanaSnapshot
              
             $query = New-RscMutationDownload -SapHanaSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the SapHanaSnapshot operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: SapHanaSnapshotFromLocation
              
             $query = New-RscMutationDownload -SapHanaSnapshotFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the SapHanaSnapshotFromLocation operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: SapHanaSnapshotsForPointInTimeRecovery
              
             $query = New-RscMutationDownload -SapHanaSnapshotsForPointInTimeRecovery
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 downloadConfig = @{
                     # OPTIONAL
                     pointInTime = $someDateTime
                     # REQUIRED
                     preferredLocationId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the SapHanaSnapshotsForPointInTimeRecovery operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: SnapshotResultsCsv
              
             $query = New-RscMutationDownload -SnapshotResultsCsv
              
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.downloadFilter = @{
                 # OPTIONAL
                 analyzerGroupIds = @(
                     $someString
                 )
                 # OPTIONAL
                 browseDirectorySnappablePath = @{
                     # OPTIONAL
                     snappableFid = $someString
                     # OPTIONAL
                     stdPath = $someString
                 }
                 # OPTIONAL
                 listFileResultsSnappablePaths = @(
                     @{
                         # OPTIONAL
                         snappableFid = $someString
                         # OPTIONAL
                         stdPath = $someString
                     }
                 )
                 # OPTIONAL
                 listFileResultsSnappableTypes = @(
                     $someString
                 )
                 # OPTIONAL
                 listFileResultsSearchText = $someString
                 # OPTIONAL
                 whitelistEnabled = $someBoolean
                 # REQUIRED
                 fileType = $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotResultsCsv operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: ThreatHuntCsv
              
             $query = New-RscMutationDownload -ThreatHuntCsv
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 huntId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadThreatHuntCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ThreatHuntCsv operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: VolumeGroupSnapshotFiles
              
             $query = New-RscMutationDownload -VolumeGroupSnapshotFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 nextSnapshotFid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                     # REQUIRED
                     paths = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 deltaTypeFilter = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the VolumeGroupSnapshotFiles operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: VolumeGroupSnapshotFromLocation
              
             $query = New-RscMutationDownload -VolumeGroupSnapshotFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the VolumeGroupSnapshotFromLocation operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationExchange</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationExchange</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Microsoft Exchange' API domain: BulkUpdateDag, CreateMount, CreateOnDemandBackup, or DeleteSnapshotMount.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationExchange creates a new mutation object for operations in the 'Microsoft Exchange' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Microsoft Exchange' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkUpdateDag, CreateMount, CreateOnDemandBackup, or DeleteSnapshotMount. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationExchange -BulkUpdateDag).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationExchange -BulkUpdateDag).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationExchange</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateDag</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOnDemandBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSnapshotMount</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: BulkUpdateDag
              
             $query = New-RscMutationExchange -BulkUpdateDag
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 dagUpdateProperties = @(
                     @{
                         # REQUIRED
                         id = $someString
                         # REQUIRED
                         updateProperties = @{
                             # REQUIRED
                             backupPreference = $someExchangeBackupPreference # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeBackupPreference]) for enum values.
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: V1BulkUpdateExchangeDagResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateDag operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: CreateMount
              
             $query = New-RscMutationExchange -CreateMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     smbDomainName = $someString
                     # OPTIONAL
                     smbValidIps = @(
                         $someString
                     )
                     # OPTIONAL
                     smbValidUsers = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateMount operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: CreateOnDemandBackup
              
             $query = New-RscMutationExchange -CreateOnDemandBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     forceFullSnapshot = $someBoolean
                     # OPTIONAL
                     baseOnDemandSnapshotConfig = @{
                         # OPTIONAL
                         slaId = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOnDemandBackup operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: DeleteSnapshotMount
              
             $query = New-RscMutationExchange -DeleteSnapshotMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSnapshotMount operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationFailoverCluster</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationFailoverCluster</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'Failover Cluster' API domain: BulkDelete, BulkDeleteApp, Create, CreateApp, Delete, DeleteApp, Update, or UpdateApp.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationFailoverCluster creates a new mutation object for operations in the 'Failover Cluster' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Failover Cluster' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkDelete, BulkDeleteApp, Create, CreateApp, Delete, DeleteApp, Update, or UpdateApp. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationFailoverCluster -BulkDelete).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationFailoverCluster -BulkDelete).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationFailoverCluster</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkDelete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkDeleteApp</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Create</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateApp</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Delete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteApp</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Update</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateApp</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: BulkDelete
              
             $query = New-RscMutationFailoverCluster -BulkDelete
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 ids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDelete operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: BulkDeleteApp
              
             $query = New-RscMutationFailoverCluster -BulkDeleteApp
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 ids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDeleteApp operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: Create
              
             $query = New-RscMutationFailoverCluster -Create
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # REQUIRED
                     hostIds = @(
                         $someString
                     )
                     # REQUIRED
                     name = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateFailoverClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Create operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: CreateApp
              
             $query = New-RscMutationFailoverCluster -CreateApp
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # REQUIRED
                     failoverClusterType = $someFailoverClusterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverClusterType]) for enum values.
                     # REQUIRED
                     failoverClusterAppSource = @{
                         # OPTIONAL
                         virtualIps = @(
                             $someString
                         )
                         # OPTIONAL
                         vips = @(
                             $someString
                         )
                         # OPTIONAL
                         nodeOrders = @(
                             @{
                                 # OPTIONAL
                                 nodeName = $someString
                                 # REQUIRED
                                 nodeId = $someString
                                 # REQUIRED
                                 order = $someInt
                             }
                         )
                     }
                     # REQUIRED
                     failoverClusterId = $someString
                     # REQUIRED
                     name = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateFailoverClusterAppReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateApp operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: Delete
              
             $query = New-RscMutationFailoverCluster -Delete
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the Delete operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: DeleteApp
              
             $query = New-RscMutationFailoverCluster -DeleteApp
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteApp operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: Update
              
             $query = New-RscMutationFailoverCluster -Update
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 updateProperties = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # REQUIRED
                     hostIds = @(
                         $someString
                     )
                     # REQUIRED
                     name = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateFailoverClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: UpdateApp
              
             $query = New-RscMutationFailoverCluster -UpdateApp
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 updateProperties = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # REQUIRED
                     failoverClusterType = $someFailoverClusterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverClusterType]) for enum values.
                     # REQUIRED
                     failoverClusterAppSource = @{
                         # OPTIONAL
                         virtualIps = @(
                             $someString
                         )
                         # OPTIONAL
                         vips = @(
                             $someString
                         )
                         # OPTIONAL
                         nodeOrders = @(
                             @{
                                 # OPTIONAL
                                 nodeName = $someString
                                 # REQUIRED
                                 nodeId = $someString
                                 # REQUIRED
                                 order = $someInt
                             }
                         )
                     }
                     # REQUIRED
                     failoverClusterId = $someString
                     # REQUIRED
                     name = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateFailoverClusterAppReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateApp operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationFileset</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationFileset</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Fileset' API domain: BulkCreate, BulkCreateTemplates, BulkDelete, BulkDeleteTemplate, BulkUpdateTemplate, or RecoverFiles.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationFileset creates a new mutation object for operations in the 'Fileset' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Fileset' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkCreate, BulkCreateTemplates, BulkDelete, BulkDeleteTemplate, BulkUpdateTemplate, or RecoverFiles. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationFileset -BulkCreate).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationFileset -BulkCreate).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationFileset</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkCreate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkCreateTemplates</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkDelete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkDeleteTemplate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateTemplate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverFiles</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: BulkCreate
              
             $query = New-RscMutationFileset -BulkCreate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 definitions = @(
                     @{
                         # OPTIONAL
                         hostId = $someString
                         # OPTIONAL
                         isPassthrough = $someBoolean
                         # OPTIONAL
                         shareId = $someString
                         # OPTIONAL
                         enableHardlinkSupport = $someBoolean
                         # OPTIONAL
                         enableSymlinkResolution = $someBoolean
                         # OPTIONAL
                         failoverClusterAppId = $someString
                         # OPTIONAL
                         snapMirrorLabelForFullBackup = $someString
                         # OPTIONAL
                         snapMirrorLabelForIncrementalBackup = $someString
                         # OPTIONAL
                         isManagedByPolaris = $someBoolean
                         # OPTIONAL
                         isPolarisNasModel = $someBoolean
                         # OPTIONAL
                         arraySpec = @{
                             # OPTIONAL
                             proxyHostId = $someString
                         }
                         # REQUIRED
                         templateId = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkCreateFilesetsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkCreate operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: BulkCreateTemplates
              
             $query = New-RscMutationFileset -BulkCreateTemplates
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 definitions = @(
                     @{
                         # OPTIONAL
                         backupScriptErrorHandling = $someString
                         # OPTIONAL
                         backupScriptTimeout = $someInt64
                         # OPTIONAL
                         exceptions = @(
                             $someString
                         )
                         # OPTIONAL
                         excludes = @(
                             $someString
                         )
                         # OPTIONAL
                         isArrayEnabled = $someBoolean
                         # OPTIONAL
                         postBackupScript = $someString
                         # OPTIONAL
                         preBackupScript = $someString
                         # OPTIONAL
                         isCreatedByKupr = $someBoolean
                         # OPTIONAL
                         isCreatedByPolarisNas = $someBoolean
                         # OPTIONAL
                         operatingSystemType = $someFilesetTemplateCreateOperatingSystemType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateOperatingSystemType]) for enum values.
                         # OPTIONAL
                         shareType = $someFilesetTemplateCreateShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateShareType]) for enum values.
                         # OPTIONAL
                         filesetOptions = @{
                             # OPTIONAL
                             allowBackupHiddenFoldersInNetworkMounts = $someBoolean
                             # OPTIONAL
                             allowBackupNetworkMounts = $someBoolean
                             # OPTIONAL
                             useWindowsVss = $someBoolean
                         }
                         # REQUIRED
                         includes = @(
                             $someString
                         )
                         # REQUIRED
                         name = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkCreateFilesetTemplatesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkCreateTemplates operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: BulkDelete
              
             $query = New-RscMutationFileset -BulkDelete
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 ids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDelete operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: BulkDeleteTemplate
              
             $query = New-RscMutationFileset -BulkDeleteTemplate
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 ids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDeleteTemplate operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: BulkUpdateTemplate
              
             $query = New-RscMutationFileset -BulkUpdateTemplate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 definitions = @(
                     @{
                         # OPTIONAL
                         backupScriptErrorHandling = $someString
                         # OPTIONAL
                         backupScriptTimeout = $someInt64
                         # OPTIONAL
                         exceptions = @(
                             $someString
                         )
                         # OPTIONAL
                         excludes = @(
                             $someString
                         )
                         # OPTIONAL
                         includes = @(
                             $someString
                         )
                         # OPTIONAL
                         name = $someString
                         # OPTIONAL
                         postBackupScript = $someString
                         # OPTIONAL
                         preBackupScript = $someString
                         # OPTIONAL
                         isCreatedByKupr = $someBoolean
                         # OPTIONAL
                         isCreatedByPolarisNas = $someBoolean
                         # OPTIONAL
                         operatingSystemType = $someFilesetTemplatePatchOperatingSystemType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplatePatchOperatingSystemType]) for enum values.
                         # OPTIONAL
                         shareType = $someFilesetTemplatePatchShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplatePatchShareType]) for enum values.
                         # OPTIONAL
                         filesetOptions = @{
                             # OPTIONAL
                             allowBackupHiddenFoldersInNetworkMounts = $someBoolean
                             # OPTIONAL
                             allowBackupNetworkMounts = $someBoolean
                             # OPTIONAL
                             useWindowsVss = $someBoolean
                         }
                         # REQUIRED
                         id = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateFilesetTemplateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateTemplate operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: RecoverFiles
              
             $query = New-RscMutationFileset -RecoverFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotFid = $someString
                 # OPTIONAL
                 nextSnapshotFid = $someString
                 # REQUIRED
                 restorePathPairList = @(
                     @{
                         # OPTIONAL
                         path = $someString
                         # OPTIONAL
                         restorePath = $someString
                     }
                 )
                 # OPTIONAL
                 deltaTypeFilter = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     ignoreErrors = $someBoolean
                     # OPTIONAL
                     excludePaths = @(
                         $someString
                     )
                     # OPTIONAL
                     shouldRecreateDirectoryStructure = $someBoolean
                     # REQUIRED
                     restoreConfig = @(
                         @{
                             # OPTIONAL
                             restorePathPair = @{
                                 # OPTIONAL
                                 restorePath = $someString
                                 # REQUIRED
                                 path = $someString
                             }
                         }
                     )
                 }
                 # REQUIRED
                 shareType = $someShareTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ShareTypeEnum]) for enum values.
                 # REQUIRED
                 osType = $someGuestOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GuestOsType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverFiles operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationGcp</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationGcp</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'Google Cloud Platform' API domain: CloudAccountAddManualAuthProject, CloudAccountAddProjects, CloudAccountDeleteProjects, CloudAccountOauthComplete, CloudAccountOauthInitiate, CloudAccountUpgradeProjects, CreateReaderTarget, CreateTarget, SetDefaultServiceAccountJwtConfig, UpdateTarget, or UpgradeCloudAccountPermissionsWithoutOauth.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationGcp creates a new mutation object for operations in the 'Google Cloud Platform' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'Google Cloud Platform' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CloudAccountAddManualAuthProject, CloudAccountAddProjects, CloudAccountDeleteProjects, CloudAccountOauthComplete, CloudAccountOauthInitiate, CloudAccountUpgradeProjects, CreateReaderTarget, CreateTarget, SetDefaultServiceAccountJwtConfig, UpdateTarget, or UpgradeCloudAccountPermissionsWithoutOauth. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationGcp -CloudAccountAddManualAuthProject).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationGcp -CloudAccountAddManualAuthProject).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationGcp</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountAddManualAuthProject</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountAddProjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountDeleteProjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountOauthComplete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountOauthInitiate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountUpgradeProjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetDefaultServiceAccountJwtConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeCloudAccountPermissionsWithoutOauth</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountAddManualAuthProject
              
             $query = New-RscMutationGcp -CloudAccountAddManualAuthProject
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 gcpNativeProjectId = $someString
                 # REQUIRED
                 gcpProjectName = $someString
                 # REQUIRED
                 gcpProjectNumber = $someInt64
                 # OPTIONAL
                 organizationName = $someString
                 # OPTIONAL
                 serviceAccountJwtConfig = $someString
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountAddManualAuthProject operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountAddProjects
              
             $query = New-RscMutationGcp -CloudAccountAddProjects
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # REQUIRED
                 nativeProtectionProjectIds = @(
                     $someString
                 )
                 # REQUIRED
                 sharedVpcHostProjectIds = @(
                     $someString
                 )
                 # REQUIRED
                 cloudAccountsProjectIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpCloudAccountAddProjectsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountAddProjects operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountDeleteProjects
              
             $query = New-RscMutationGcp -CloudAccountDeleteProjects
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 sessionId = $someString
                 # REQUIRED
                 nativeProtectionProjectIds = @(
                     $someString
                 )
                 # REQUIRED
                 sharedVpcHostProjectIds = @(
                     $someString
                 )
                 # REQUIRED
                 cloudAccountsProjectIds = @(
                     $someString
                 )
                 # REQUIRED
                 skipResourceDeletion = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpCloudAccountDeleteProjectsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountDeleteProjects operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountOauthComplete
              
             $query = New-RscMutationGcp -CloudAccountOauthComplete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # REQUIRED
                 authorizationCode = $someString
                 # REQUIRED
                 redirectUrl = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpCloudAccountOauthCompleteReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountOauthComplete operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountOauthInitiate
              
             $query = New-RscMutationGcp -CloudAccountOauthInitiate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 customerUrl = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpCloudAccountOauthInitiateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountOauthInitiate operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountUpgradeProjects
              
             $query = New-RscMutationGcp -CloudAccountUpgradeProjects
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # REQUIRED
                 projectIds = @(
                     $someString
                 )
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpCloudAccountUpgradeProjectsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountUpgradeProjects operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CreateReaderTarget
              
             $query = New-RscMutationGcp -CreateReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 region = $someGcpRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpRegion]) for enum values.
                 # REQUIRED
                 storageClass = $someGcpStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpStorageClass]) for enum values.
                 # REQUIRED
                 bucket = $someString
                 # REQUIRED
                 encryptionPassword = $someString
                 # REQUIRED
                 serviceAccountJsonKey = $someString
                 # OPTIONAL
                 archivalProxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
                 # REQUIRED
                 bypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateReaderTarget operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CreateTarget
              
             $query = New-RscMutationGcp -CreateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 region = $someGcpRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpRegion]) for enum values.
                 # REQUIRED
                 storageClass = $someGcpStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpStorageClass]) for enum values.
                 # REQUIRED
                 bucket = $someString
                 # REQUIRED
                 encryptionPassword = $someString
                 # REQUIRED
                 serviceAccountJsonKey = $someString
                 # OPTIONAL
                 archivalProxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # REQUIRED
                 bypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateTarget operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: SetDefaultServiceAccountJwtConfig
              
             $query = New-RscMutationGcp -SetDefaultServiceAccountJwtConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 serviceAccountName = $someString
                 # REQUIRED
                 serviceAccountJwtConfig = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetDefaultServiceAccountJwtConfig operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: UpdateTarget
              
             $query = New-RscMutationGcp -UpdateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 region = $someGcpRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpRegion]) for enum values.
                 # OPTIONAL
                 storageClass = $someGcpStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpStorageClass]) for enum values.
                 # OPTIONAL
                 bucket = $someString
                 # OPTIONAL
                 encryptionPassword = $someString
                 # OPTIONAL
                 serviceAccountJsonKey = $someString
                 # OPTIONAL
                 archivalProxySettings = @{
                     # OPTIONAL
                     proxyServer = $someString
                     # OPTIONAL
                     portNumber = $someInt
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     protocol = $someString
                 }
                 # OPTIONAL
                 bypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTarget operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: UpgradeCloudAccountPermissionsWithoutOauth
              
             $query = New-RscMutationGcp -UpgradeCloudAccountPermissionsWithoutOauth
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpgradeGcpCloudAccountPermissionsWithoutOauthReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeCloudAccountPermissionsWithoutOauth operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationGcpNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationGcpNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Google Cloud Platform Native' API domain: DisableProject, ExcludeDisksFromInstanceSnapshot, ExportDisk, ExportGceInstance, RefreshProjects, or RestoreGceInstance.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationGcpNative creates a new mutation object for operations in the 'Google Cloud Platform Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Google Cloud Platform Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: DisableProject, ExcludeDisksFromInstanceSnapshot, ExportDisk, ExportGceInstance, RefreshProjects, or RestoreGceInstance. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationGcpNative -DisableProject).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationGcpNative -DisableProject).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationGcpNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">DisableProject</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExcludeDisksFromInstanceSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportDisk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportGceInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshProjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreGceInstance</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: DisableProject
              
             $query = New-RscMutationGcpNative -DisableProject
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 projectId = $someString
                 # REQUIRED
                 shouldDeleteNativeSnapshots = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DisableProject operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: ExcludeDisksFromInstanceSnapshot
              
             $query = New-RscMutationGcpNative -ExcludeDisksFromInstanceSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 instanceId = $someString
                 # REQUIRED
                 diskIdToIsExcluded = @(
                     @{
                         # REQUIRED
                         diskId = $someString
                         # REQUIRED
                         isExcluded = $someBoolean
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExcludeDisksFromInstanceSnapshot operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: ExportDisk
              
             $query = New-RscMutationGcpNative -ExportDisk
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 targetRegion = $someString
                 # OPTIONAL
                 targetZone = $someString
                 # REQUIRED
                 targetDiskName = $someString
                 # REQUIRED
                 targetDiskType = $someString
                 # REQUIRED
                 targetDiskSizeGb = $someInt
                 # REQUIRED
                 replaceAttached = $someBoolean
                 # OPTIONAL
                 replicaZones = @(
                     $someString
                 )
                 # REQUIRED
                 shouldCopyLabels = $someBoolean
                 # REQUIRED
                 shouldAddRubrikLabels = $someBoolean
                 # REQUIRED
                 diskEncryptionType = $someDiskEncryptionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiskEncryptionType]) for enum values.
                 # OPTIONAL
                 kmsCryptoKey = @{
                     # OPTIONAL
                     projectNativeId = $someString
                     # OPTIONAL
                     location = $someString
                     # OPTIONAL
                     keyRing = $someString
                     # OPTIONAL
                     key = $someString
                 }
                 # OPTIONAL
                 kmsCryptoKeyResourceId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportDisk operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: ExportGceInstance
              
             $query = New-RscMutationGcpNative -ExportGceInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 targetZone = $someString
                 # REQUIRED
                 targetInstanceName = $someString
                 # REQUIRED
                 targetMachineType = $someString
                 # REQUIRED
                 targetSubnetName = $someString
                 # OPTIONAL
                 targetNetworkTags = @(
                     $someString
                 )
                 # REQUIRED
                 shouldPowerOff = $someBoolean
                 # REQUIRED
                 shouldCopyLabels = $someBoolean
                 # REQUIRED
                 shouldAddRubrikLabels = $someBoolean
                 # OPTIONAL
                 sharedVpcHostProjectNativeId = $someString
                 # REQUIRED
                 diskEncryptionType = $someDiskEncryptionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiskEncryptionType]) for enum values.
                 # OPTIONAL
                 kmsCryptoKey = @{
                     # OPTIONAL
                     projectNativeId = $someString
                     # OPTIONAL
                     location = $someString
                     # OPTIONAL
                     keyRing = $someString
                     # OPTIONAL
                     key = $someString
                 }
                 # OPTIONAL
                 kmsCryptoKeyResourceId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportGceInstance operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: RefreshProjects
              
             $query = New-RscMutationGcpNative -RefreshProjects
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 projectIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshProjects operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: RestoreGceInstance
              
             $query = New-RscMutationGcpNative -RestoreGceInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 shouldAddRubrikLabels = $someBoolean
                 # REQUIRED
                 shouldRestoreLabels = $someBoolean
                 # REQUIRED
                 shouldStartRestoredInstance = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreGceInstance operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationHost</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationHost</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 7 operations in the 'Host' API domain: BulkDelete, BulkRefresh, BulkRegister, BulkRegisterAsync, BulkUpdate, ChangeVfd, or Refresh.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationHost creates a new mutation object for operations in the 'Host' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 7 operations in the 'Host' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkDelete, BulkRefresh, BulkRegister, BulkRegisterAsync, BulkUpdate, ChangeVfd, or Refresh. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationHost -BulkDelete).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationHost -BulkDelete).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationHost</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkDelete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkRefresh</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkRegister</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkRegisterAsync</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ChangeVfd</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Refresh</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: BulkDelete
              
             $query = New-RscMutationHost -BulkDelete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDelete operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: BulkRefresh
              
             $query = New-RscMutationHost -BulkRefresh
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ids = @(
                     $someString
                 )
                 # REQUIRED
                 shouldRunAsynchronously = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkRefreshHostsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkRefresh operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: BulkRegister
              
             $query = New-RscMutationHost -BulkRegister
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 hosts = @(
                     @{
                         # OPTIONAL
                         hasAgent = $someBoolean
                         # OPTIONAL
                         oracleQueryUser = $someString
                         # OPTIONAL
                         oracleSysDbaUser = $someString
                         # OPTIONAL
                         organizationId = $someString
                         # OPTIONAL
                         alias = $someString
                         # OPTIONAL
                         isOracleHost = $someBoolean
                         # OPTIONAL
                         mssqlSddCertificateId = $someString
                         # OPTIONAL
                         orgNetworkId = $someString
                         # OPTIONAL
                         osType = $someHostRegisterOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRegisterOsType]) for enum values.
                         # OPTIONAL
                         hdfsConfig = @{
                             # OPTIONAL
                             hdfsBaseConfig = @{
                                 # OPTIONAL
                                 apiToken = $someString
                                 # OPTIONAL
                                 kerberosTicket = $someString
                                 # OPTIONAL
                                 nameservices = $someString
                                 # OPTIONAL
                                 username = $someString
                                 # REQUIRED
                                 hosts = @(
                                     @{
                                         # REQUIRED
                                         hostname = $someString
                                         # REQUIRED
                                         port = $someInt
                                     }
                                 )
                             }
                         }
                         # REQUIRED
                         hostname = $someString
                         # OPTIONAL
                         mssqlSddUserCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                         # OPTIONAL
                         nasConfig = @{
                             # OPTIONAL
                             apiCertificate = $someString
                             # OPTIONAL
                             apiEndpoint = $someString
                             # OPTIONAL
                             apiHostname = $someString
                             # OPTIONAL
                             apiPassword = $someString
                             # OPTIONAL
                             apiToken = $someString
                             # OPTIONAL
                             apiUsername = $someString
                             # OPTIONAL
                             zoneName = $someString
                             # OPTIONAL
                             isSnapdiffEnabled = $someBoolean
                             # OPTIONAL
                             isIsilonChangelistEnabled = $someBoolean
                             # OPTIONAL
                             isNetAppSnapDiffEnabled = $someBoolean
                             # OPTIONAL
                             isShareAutoDiscoveryEnabled = $someBoolean
                             # OPTIONAL
                             isNutanixCftEnabled = $someBoolean
                             # REQUIRED
                             vendorType = $someString
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkRegisterHostReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkRegister operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: BulkRegisterAsync
              
             $query = New-RscMutationHost -BulkRegisterAsync
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 hosts = @(
                     @{
                         # OPTIONAL
                         hasAgent = $someBoolean
                         # OPTIONAL
                         oracleQueryUser = $someString
                         # OPTIONAL
                         oracleSysDbaUser = $someString
                         # OPTIONAL
                         organizationId = $someString
                         # OPTIONAL
                         alias = $someString
                         # OPTIONAL
                         isOracleHost = $someBoolean
                         # OPTIONAL
                         mssqlSddCertificateId = $someString
                         # OPTIONAL
                         orgNetworkId = $someString
                         # OPTIONAL
                         osType = $someHostRegisterOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRegisterOsType]) for enum values.
                         # OPTIONAL
                         hdfsConfig = @{
                             # OPTIONAL
                             hdfsBaseConfig = @{
                                 # OPTIONAL
                                 apiToken = $someString
                                 # OPTIONAL
                                 kerberosTicket = $someString
                                 # OPTIONAL
                                 nameservices = $someString
                                 # OPTIONAL
                                 username = $someString
                                 # REQUIRED
                                 hosts = @(
                                     @{
                                         # REQUIRED
                                         hostname = $someString
                                         # REQUIRED
                                         port = $someInt
                                     }
                                 )
                             }
                         }
                         # REQUIRED
                         hostname = $someString
                         # OPTIONAL
                         mssqlSddUserCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                         # OPTIONAL
                         nasConfig = @{
                             # OPTIONAL
                             apiCertificate = $someString
                             # OPTIONAL
                             apiEndpoint = $someString
                             # OPTIONAL
                             apiHostname = $someString
                             # OPTIONAL
                             apiPassword = $someString
                             # OPTIONAL
                             apiToken = $someString
                             # OPTIONAL
                             apiUsername = $someString
                             # OPTIONAL
                             zoneName = $someString
                             # OPTIONAL
                             isSnapdiffEnabled = $someBoolean
                             # OPTIONAL
                             isIsilonChangelistEnabled = $someBoolean
                             # OPTIONAL
                             isNetAppSnapDiffEnabled = $someBoolean
                             # OPTIONAL
                             isShareAutoDiscoveryEnabled = $someBoolean
                             # OPTIONAL
                             isNutanixCftEnabled = $someBoolean
                             # REQUIRED
                             vendorType = $someString
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkRegisterHostAsyncReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkRegisterAsync operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: BulkUpdate
              
             $query = New-RscMutationHost -BulkUpdate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 hostUpdateProperties = @(
                     @{
                         # REQUIRED
                         hostId = $someString
                         # REQUIRED
                         updateProperties = @{
                             # OPTIONAL
                             compressionEnabled = $someBoolean
                             # OPTIONAL
                             hostVfdDriverInstalled = $someBoolean
                             # OPTIONAL
                             hostname = $someString
                             # OPTIONAL
                             mssqlCbtDriverInstalled = $someBoolean
                             # OPTIONAL
                             oracleQueryUser = $someString
                             # OPTIONAL
                             oracleSysDbaUser = $someString
                             # OPTIONAL
                             alias = $someString
                             # OPTIONAL
                             isOracleHost = $someBoolean
                             # OPTIONAL
                             isUpdateCertAndAgentIdEnabled = $someBoolean
                             # OPTIONAL
                             isRefreshPaused = $someBoolean
                             # OPTIONAL
                             mssqlSddCertificateId = $someString
                             # OPTIONAL
                             hostVfdEnabled = $someHostVfdInstallConfig # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostVfdInstallConfig]) for enum values.
                             # OPTIONAL
                             mssqlCbtEnabled = $someMssqlCbtStatusType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlCbtStatusType]) for enum values.
                             # OPTIONAL
                             hdfsConfig = @{
                                 # OPTIONAL
                                 hdfsBaseConfig = @{
                                     # OPTIONAL
                                     apiToken = $someString
                                     # OPTIONAL
                                     kerberosTicket = $someString
                                     # OPTIONAL
                                     nameservices = $someString
                                     # OPTIONAL
                                     username = $someString
                                     # REQUIRED
                                     hosts = @(
                                         @{
                                             # REQUIRED
                                             hostname = $someString
                                             # REQUIRED
                                             port = $someInt
                                         }
                                     )
                                 }
                             }
                             # OPTIONAL
                             mssqlSddUserCredentials = @{
                                 # REQUIRED
                                 password = $someString
                                 # REQUIRED
                                 username = $someString
                             }
                             # OPTIONAL
                             nasConfig = @{
                                 # OPTIONAL
                                 apiCertificate = $someString
                                 # OPTIONAL
                                 apiEndpoint = $someString
                                 # OPTIONAL
                                 apiHostname = $someString
                                 # OPTIONAL
                                 apiPassword = $someString
                                 # OPTIONAL
                                 apiToken = $someString
                                 # OPTIONAL
                                 apiUsername = $someString
                                 # OPTIONAL
                                 zoneName = $someString
                                 # OPTIONAL
                                 isSnapdiffEnabled = $someBoolean
                                 # OPTIONAL
                                 isIsilonChangelistEnabled = $someBoolean
                                 # OPTIONAL
                                 isNetAppSnapDiffEnabled = $someBoolean
                                 # OPTIONAL
                                 isShareAutoDiscoveryEnabled = $someBoolean
                                 # OPTIONAL
                                 isNutanixCftEnabled = $someBoolean
                                 # REQUIRED
                                 vendorType = $someString
                             }
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateHostReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdate operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: ChangeVfd
              
             $query = New-RscMutationHost -ChangeVfd
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     hostIds = @(
                         $someString
                     )
                     # REQUIRED
                     install = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ChangeVfdOnHostReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ChangeVfd operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: Refresh
              
             $query = New-RscMutationHost -Refresh
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RefreshHostReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Refresh operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationHyperv</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationHyperv</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 26 operations in the 'Microsoft Hyper-V' API domain: BatchExportVm, BatchInstantRecoverVm, BatchMountVm, BatchOnDemandBackupVm, CreateVirtualMachineSnapshotDiskMount, CreateVirtualMachineSnapshotMount, DeleteAllSnapshots, DeleteVirtualMachineSnapshot, DeleteVirtualMachineSnapshotMount, DownloadSnapshotFromLocation, DownloadVirtualMachineLevelFiles, DownloadVirtualMachineSnapshot, DownloadVirtualMachineSnapshotFiles, ExportVirtualMachine, InplaceExportVirtualMachine, InstantRecoverVirtualMachineSnapshot, OnDemandSnapshot, RefreshScvmm, RefreshServer, RegisterAgentVirtualMachine, RegisterScvmm, RestoreVirtualMachineSnapshotFiles, ScvmmDelete, ScvmmUpdate, UpdateVirtualMachine, or UpdateVirtualMachineSnapshotMount.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationHyperv creates a new mutation object for operations in the 'Microsoft Hyper-V' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 26 operations in the 'Microsoft Hyper-V' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BatchExportVm, BatchInstantRecoverVm, BatchMountVm, BatchOnDemandBackupVm, CreateVirtualMachineSnapshotDiskMount, CreateVirtualMachineSnapshotMount, DeleteAllSnapshots, DeleteVirtualMachineSnapshot, DeleteVirtualMachineSnapshotMount, DownloadSnapshotFromLocation, DownloadVirtualMachineLevelFiles, DownloadVirtualMachineSnapshot, DownloadVirtualMachineSnapshotFiles, ExportVirtualMachine, InplaceExportVirtualMachine, InstantRecoverVirtualMachineSnapshot, OnDemandSnapshot, RefreshScvmm, RefreshServer, RegisterAgentVirtualMachine, RegisterScvmm, RestoreVirtualMachineSnapshotFiles, ScvmmDelete, ScvmmUpdate, UpdateVirtualMachine, or UpdateVirtualMachineSnapshotMount. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationHyperv -BatchExportVm).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationHyperv -BatchExportVm).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationHyperv</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BatchExportVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchInstantRecoverVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchMountVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchOnDemandBackupVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateVirtualMachineSnapshotDiskMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateVirtualMachineSnapshotMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteAllSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteVirtualMachineSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteVirtualMachineSnapshotMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshotFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadVirtualMachineLevelFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadVirtualMachineSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadVirtualMachineSnapshotFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportVirtualMachine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InplaceExportVirtualMachine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InstantRecoverVirtualMachineSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OnDemandSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshScvmm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshServer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterAgentVirtualMachine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterScvmm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreVirtualMachineSnapshotFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ScvmmDelete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ScvmmUpdate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateVirtualMachine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateVirtualMachineSnapshotMount</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: BatchExportVm
              
             $query = New-RscMutationHyperv -BatchExportVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             vmNamePrefix = $someString
                             # REQUIRED
                             exportConfig = @{
                                 # OPTIONAL
                                 disableNetwork = $someBoolean
                                 # OPTIONAL
                                 hostId = $someString
                                 # OPTIONAL
                                 powerOn = $someBoolean
                                 # OPTIONAL
                                 removeNetworkDevices = $someBoolean
                                 # OPTIONAL
                                 vmName = $someString
                                 # REQUIRED
                                 path = $someString
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchExportHypervVmReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchExportVm operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: BatchInstantRecoverVm
              
             $query = New-RscMutationHyperv -BatchInstantRecoverVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # REQUIRED
                             instantRecoveryConfig = @{
                                 # OPTIONAL
                                 hostId = $someString
                                 # OPTIONAL
                                 vmName = $someString
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchInstantRecoverHypervVmReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchInstantRecoverVm operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: BatchMountVm
              
             $query = New-RscMutationHyperv -BatchMountVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             vmNamePrefix = $someString
                             # REQUIRED
                             mountConfig = @{
                                 # OPTIONAL
                                 disableNetwork = $someBoolean
                                 # OPTIONAL
                                 hostId = $someString
                                 # OPTIONAL
                                 powerOn = $someBoolean
                                 # OPTIONAL
                                 removeNetworkDevices = $someBoolean
                                 # OPTIONAL
                                 vmName = $someString
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchMountHypervVmReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchMountVm operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: BatchOnDemandBackupVm
              
             $query = New-RscMutationHyperv -BatchOnDemandBackupVm
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 userNote = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     vms = @(
                         @{
                             # OPTIONAL
                             backupConfig = @{
                                 # OPTIONAL
                                 slaId = $someString
                             }
                             # OPTIONAL
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchOnDemandBackupHypervVmReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchOnDemandBackupVm operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: CreateVirtualMachineSnapshotDiskMount
              
             $query = New-RscMutationHyperv -CreateVirtualMachineSnapshotDiskMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     targetVirtualMachineId = $someString
                     # REQUIRED
                     virtualDiskIds = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateVirtualMachineSnapshotDiskMount operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: CreateVirtualMachineSnapshotMount
              
             $query = New-RscMutationHyperv -CreateVirtualMachineSnapshotMount
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     disableNetwork = $someBoolean
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     powerOn = $someBoolean
                     # OPTIONAL
                     removeNetworkDevices = $someBoolean
                     # OPTIONAL
                     vmName = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateVirtualMachineSnapshotMount operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: DeleteAllSnapshots
              
             $query = New-RscMutationHyperv -DeleteAllSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteAllSnapshots operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: DeleteVirtualMachineSnapshot
              
             $query = New-RscMutationHyperv -DeleteVirtualMachineSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 location = $someInternalDeleteHypervVirtualMachineSnapshotRequestLocation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InternalDeleteHypervVirtualMachineSnapshotRequestLocation]) for enum values.
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteVirtualMachineSnapshot operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: DeleteVirtualMachineSnapshotMount
              
             $query = New-RscMutationHyperv -DeleteVirtualMachineSnapshotMount
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 force = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteVirtualMachineSnapshotMount operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: DownloadSnapshotFromLocation
              
             $query = New-RscMutationHyperv -DownloadSnapshotFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshotFromLocation operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: DownloadVirtualMachineLevelFiles
              
             $query = New-RscMutationHyperv -DownloadVirtualMachineLevelFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     configFileExtensions = @(
                         $someString
                     )
                     # REQUIRED
                     virtualDiskIds = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadVirtualMachineLevelFiles operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: DownloadVirtualMachineSnapshot
              
             $query = New-RscMutationHyperv -DownloadVirtualMachineSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadVirtualMachineSnapshot operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: DownloadVirtualMachineSnapshotFiles
              
             $query = New-RscMutationHyperv -DownloadVirtualMachineSnapshotFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                     # REQUIRED
                     paths = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadVirtualMachineSnapshotFiles operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: ExportVirtualMachine
              
             $query = New-RscMutationHyperv -ExportVirtualMachine
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     disableNetwork = $someBoolean
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     powerOn = $someBoolean
                     # OPTIONAL
                     removeNetworkDevices = $someBoolean
                     # OPTIONAL
                     vmName = $someString
                     # REQUIRED
                     path = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportVirtualMachine operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: InplaceExportVirtualMachine
              
             $query = New-RscMutationHyperv -InplaceExportVirtualMachine
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     exportVmPath = $someString
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     shouldKeepHypervVmCopyAfterRecovery = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InplaceExportVirtualMachine operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: InstantRecoverVirtualMachineSnapshot
              
             $query = New-RscMutationHyperv -InstantRecoverVirtualMachineSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     vmName = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InstantRecoverVirtualMachineSnapshot operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: OnDemandSnapshot
              
             $query = New-RscMutationHyperv -OnDemandSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the OnDemandSnapshot operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: RefreshScvmm
              
             $query = New-RscMutationHyperv -RefreshScvmm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshScvmm operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: RefreshServer
              
             $query = New-RscMutationHyperv -RefreshServer
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshServer operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: RegisterAgentVirtualMachine
              
             $query = New-RscMutationHyperv -RegisterAgentVirtualMachine
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterAgentVirtualMachine operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: RegisterScvmm
              
             $query = New-RscMutationHyperv -RegisterScvmm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 scvmm = @{
                     # REQUIRED
                     hostname = $someString
                     # REQUIRED
                     runAsAccount = $someString
                     # REQUIRED
                     shouldDeployAgent = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterScvmm operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: RestoreVirtualMachineSnapshotFiles
              
             $query = New-RscMutationHyperv -RestoreVirtualMachineSnapshotFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     targetVirtualMachineId = $someString
                     # REQUIRED
                     restoreConfig = @(
                         @{
                             # REQUIRED
                             path = $someString
                             # REQUIRED
                             restorePath = $someString
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreVirtualMachineSnapshotFiles operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: ScvmmDelete
              
             $query = New-RscMutationHyperv -ScvmmDelete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the ScvmmDelete operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: ScvmmUpdate
              
             $query = New-RscMutationHyperv -ScvmmUpdate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 updateProperties = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     hostname = $someString
                     # OPTIONAL
                     runAsAccount = $someString
                     # OPTIONAL
                     shouldDeployAgent = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HypervScvmmUpdateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ScvmmUpdate operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: UpdateVirtualMachine
              
             $query = New-RscMutationHyperv -UpdateVirtualMachine
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 vmUpdateProperties = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     virtualDiskIdsExcludedFromSnapshot = @(
                         $someString
                     )
                     # OPTIONAL
                     cloudInstantiationSpec = @{
                         # REQUIRED
                         imageRetentionInSeconds = $someInt64
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateHypervVirtualMachineReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateVirtualMachine operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: UpdateVirtualMachineSnapshotMount
              
             $query = New-RscMutationHyperv -UpdateVirtualMachineSnapshotMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     powerStatus = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateHypervVirtualMachineSnapshotMountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateVirtualMachineSnapshotMount operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationIntegration</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationIntegration</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Integration' API domain: CreateIntegration, CreateIntegrations, DeleteIntegration, DeleteIntegrations, UpdateIntegration, or UpdateIntegrations.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationIntegration creates a new mutation object for operations in the 'Integration' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Integration' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateIntegration, CreateIntegrations, DeleteIntegration, DeleteIntegrations, UpdateIntegration, or UpdateIntegrations. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationIntegration -CreateIntegration).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationIntegration -CreateIntegration).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationIntegration</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateIntegration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateIntegrations</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteIntegration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteIntegrations</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateIntegration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateIntegrations</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: CreateIntegration
              
             $query = New-RscMutationIntegration -CreateIntegration
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values.
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     dataLossPrevention = @{
                         # OPTIONAL
                         policies = @(
                             $someString
                         )
                         # OPTIONAL
                         genericNas = @{
                             # REQUIRED
                             workloadId = $someString
                             # REQUIRED
                             shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values.
                             # REQUIRED
                             shareId = $someString
                             # REQUIRED
                             path = $someString
                         }
                         # OPTIONAL
                         vmwareVm = @{
                             # REQUIRED
                             workloadId = $someString
                             # REQUIRED
                             osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values.
                             # REQUIRED
                             path = $someString
                         }
                         # OPTIONAL
                         serviceAccountId = $someString
                         # OPTIONAL
                         serviceAccountName = $someString
                         # OPTIONAL
                         status = @{
                             # OPTIONAL
                             code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values.
                         }
                         # REQUIRED
                         targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values.
                     }
                     # OPTIONAL
                     serviceNowItsm = @{
                         # REQUIRED
                         serviceAccountId = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateIntegrationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateIntegration operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: CreateIntegrations
              
             $query = New-RscMutationIntegration -CreateIntegrations
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 integrations = @(
                     @{
                         # REQUIRED
                         name = $someString
                         # REQUIRED
                         integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values.
                         # REQUIRED
                         config = @{
                             # OPTIONAL
                             dataLossPrevention = @{
                                 # OPTIONAL
                                 policies = @(
                                     $someString
                                 )
                                 # OPTIONAL
                                 genericNas = @{
                                     # REQUIRED
                                     workloadId = $someString
                                     # REQUIRED
                                     shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values.
                                     # REQUIRED
                                     shareId = $someString
                                     # REQUIRED
                                     path = $someString
                                 }
                                 # OPTIONAL
                                 vmwareVm = @{
                                     # REQUIRED
                                     workloadId = $someString
                                     # REQUIRED
                                     osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values.
                                     # REQUIRED
                                     path = $someString
                                 }
                                 # OPTIONAL
                                 serviceAccountId = $someString
                                 # OPTIONAL
                                 serviceAccountName = $someString
                                 # OPTIONAL
                                 status = @{
                                     # OPTIONAL
                                     code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values.
                                 }
                                 # REQUIRED
                                 targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values.
                             }
                             # OPTIONAL
                             serviceNowItsm = @{
                                 # REQUIRED
                                 serviceAccountId = $someString
                             }
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateIntegrationsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateIntegrations operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: DeleteIntegration
              
             $query = New-RscMutationIntegration -DeleteIntegration
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt64
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteIntegration operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: DeleteIntegrations
              
             $query = New-RscMutationIntegration -DeleteIntegrations
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ids = @(
                     $someInt64
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteIntegrations operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: UpdateIntegration
              
             $query = New-RscMutationIntegration -UpdateIntegration
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt64
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values.
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     dataLossPrevention = @{
                         # OPTIONAL
                         policies = @(
                             $someString
                         )
                         # OPTIONAL
                         genericNas = @{
                             # REQUIRED
                             workloadId = $someString
                             # REQUIRED
                             shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values.
                             # REQUIRED
                             shareId = $someString
                             # REQUIRED
                             path = $someString
                         }
                         # OPTIONAL
                         vmwareVm = @{
                             # REQUIRED
                             workloadId = $someString
                             # REQUIRED
                             osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values.
                             # REQUIRED
                             path = $someString
                         }
                         # OPTIONAL
                         serviceAccountId = $someString
                         # OPTIONAL
                         serviceAccountName = $someString
                         # OPTIONAL
                         status = @{
                             # OPTIONAL
                             code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values.
                         }
                         # REQUIRED
                         targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values.
                     }
                     # OPTIONAL
                     serviceNowItsm = @{
                         # REQUIRED
                         serviceAccountId = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateIntegration operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: UpdateIntegrations
              
             $query = New-RscMutationIntegration -UpdateIntegrations
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 integrations = @(
                     @{
                         # REQUIRED
                         id = $someInt64
                         # REQUIRED
                         name = $someString
                         # REQUIRED
                         integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values.
                         # REQUIRED
                         config = @{
                             # OPTIONAL
                             dataLossPrevention = @{
                                 # OPTIONAL
                                 policies = @(
                                     $someString
                                 )
                                 # OPTIONAL
                                 genericNas = @{
                                     # REQUIRED
                                     workloadId = $someString
                                     # REQUIRED
                                     shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values.
                                     # REQUIRED
                                     shareId = $someString
                                     # REQUIRED
                                     path = $someString
                                 }
                                 # OPTIONAL
                                 vmwareVm = @{
                                     # REQUIRED
                                     workloadId = $someString
                                     # REQUIRED
                                     osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values.
                                     # REQUIRED
                                     path = $someString
                                 }
                                 # OPTIONAL
                                 serviceAccountId = $someString
                                 # OPTIONAL
                                 serviceAccountName = $someString
                                 # OPTIONAL
                                 status = @{
                                     # OPTIONAL
                                     code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values.
                                 }
                                 # REQUIRED
                                 targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values.
                             }
                             # OPTIONAL
                             serviceNowItsm = @{
                                 # REQUIRED
                                 serviceAccountId = $someString
                             }
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateIntegrations operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationK8s</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationK8s</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 17 operations in the 'Kubernetes' API domain: AddCluster, AddProtectionSet, ArchiveCluster, CreateAgentManifest, CreateCluster, CreateNamespaceSnapshots, CreateProtectionSetSnapshot, DeleteCluster, DeleteProtectionSet, ExportNamespace, ExportProtectionSetSnapshot, RefreshCluster, RefreshV2Cluster, RestoreNamespace, RestoreProtectionSetSnapshot, UpdateCluster, or UpdateProtectionSet.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationK8s creates a new mutation object for operations in the 'Kubernetes' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 17 operations in the 'Kubernetes' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddCluster, AddProtectionSet, ArchiveCluster, CreateAgentManifest, CreateCluster, CreateNamespaceSnapshots, CreateProtectionSetSnapshot, DeleteCluster, DeleteProtectionSet, ExportNamespace, ExportProtectionSetSnapshot, RefreshCluster, RefreshV2Cluster, RestoreNamespace, RestoreProtectionSetSnapshot, UpdateCluster, or UpdateProtectionSet. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationK8s -AddCluster).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationK8s -AddCluster).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationK8s</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddProtectionSet</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ArchiveCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateAgentManifest</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateNamespaceSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateProtectionSetSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteProtectionSet</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportNamespace</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportProtectionSetSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshV2Cluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreNamespace</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreProtectionSetSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateProtectionSet</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: AddCluster
              
             $query = New-RscMutationK8s -AddCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     id = $someString
                     # OPTIONAL
                     kubeconfig = $someString
                     # OPTIONAL
                     registry = $someString
                     # OPTIONAL
                     serviceAccountName = $someString
                     # OPTIONAL
                     distribution = $someString
                     # OPTIONAL
                     pullSecret = $someString
                     # OPTIONAL
                     transport = $someString
                     # OPTIONAL
                     isAutoPsCreationEnabled = $someBoolean
                     # OPTIONAL
                     clientSecret = $someString
                     # OPTIONAL
                     accessToken = $someString
                     # OPTIONAL
                     region = $someString
                     # OPTIONAL
                     onboardingType = $someString
                     # OPTIONAL
                     clientId = $someString
                     # OPTIONAL
                     eksConfig = @{
                         # REQUIRED
                         cloudAccountId = $someString
                         # REQUIRED
                         eksClusterArn = $someString
                     }
                     # OPTIONAL
                     kuprServerProxyConfig = @{
                         # OPTIONAL
                         port = $someInt
                         # REQUIRED
                         cert = $someString
                         # REQUIRED
                         ipAddress = $someString
                     }
                     # REQUIRED
                     name = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sClusterSummary</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddCluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: AddProtectionSet
              
             $query = New-RscMutationK8s -AddProtectionSet
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     creationType = $someString
                     # OPTIONAL
                     kubernetesNamespace = $someString
                     # OPTIONAL
                     hookConfigs = @(
                         $someString
                     )
                     # REQUIRED
                     definition = $someString
                     # REQUIRED
                     kubernetesClusterId = $someString
                     # REQUIRED
                     name = $someString
                     # REQUIRED
                     rsType = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sProtectionSetSummary</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddProtectionSet operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: ArchiveCluster
              
             $query = New-RscMutationK8s -ArchiveCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ArchiveK8sClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ArchiveCluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: CreateAgentManifest
              
             $query = New-RscMutationK8s -CreateAgentManifest
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterId = $someString
                 # REQUIRED
                 timeoutMinutes = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateK8sAgentManifestReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAgentManifest operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: CreateCluster
              
             $query = New-RscMutationK8s -CreateCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cdmClusterId = $someString
                 # REQUIRED
                 hostList = @(
                     $someString
                 )
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 port = $someInt
                 # REQUIRED
                 rbsPortRanges = @(
                     @{
                         # OPTIONAL
                         portMin = $someInt
                         # OPTIONAL
                         portMax = $someInt
                     }
                 )
                 # OPTIONAL
                 userDrivenPortRanges = @(
                     @{
                         # OPTIONAL
                         portMin = $someInt
                         # OPTIONAL
                         portMax = $someInt
                     }
                 )
                 # REQUIRED
                 type = $someK8sClusterProtoType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.K8sClusterProtoType]) for enum values.
                 # OPTIONAL
                 proxyUrl = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateK8sClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: CreateNamespaceSnapshots
              
             $query = New-RscMutationK8s -CreateNamespaceSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotInput = @(
                     @{
                         # REQUIRED
                         namespaceId = $someString
                         # OPTIONAL
                         onDemandSnapshotSlaId = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateNamespaceSnapshots operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: CreateProtectionSetSnapshot
              
             $query = New-RscMutationK8s -CreateProtectionSetSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateProtectionSetSnapshot operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: DeleteCluster
              
             $query = New-RscMutationK8s -DeleteCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: DeleteProtectionSet
              
             $query = New-RscMutationK8s -DeleteProtectionSet
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteProtectionSet operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: ExportNamespace
              
             $query = New-RscMutationK8s -ExportNamespace
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotUuid = $someString
                 # REQUIRED
                 targetClusterUuid = $someString
                 # REQUIRED
                 targetNamespaceName = $someString
                 # OPTIONAL
                 labelSelector = @{
                     # OPTIONAL
                     matchExpressions = @(
                         @{
                             # OPTIONAL
                             key = $someString
                             # OPTIONAL
                             operator = $someString
                             # OPTIONAL
                             values = @(
                                 $someString
                             )
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportNamespace operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: ExportProtectionSetSnapshot
              
             $query = New-RscMutationK8s -ExportProtectionSetSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 jobConfig = @{
                     # OPTIONAL
                     filter = $someString
                     # OPTIONAL
                     pvcNames = @(
                         $someString
                     )
                     # OPTIONAL
                     shouldDeleteNamespaceIfExportFailed = $someBoolean
                     # OPTIONAL
                     ignoreErrors = $someBoolean
                     # REQUIRED
                     targetClusterId = $someString
                     # REQUIRED
                     targetNamespaceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportProtectionSetSnapshot operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: RefreshCluster
              
             $query = New-RscMutationK8s -RefreshCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 k8sClusterId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshCluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: RefreshV2Cluster
              
             $query = New-RscMutationK8s -RefreshV2Cluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshV2Cluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: RestoreNamespace
              
             $query = New-RscMutationK8s -RestoreNamespace
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotUuid = $someString
                 # REQUIRED
                 targetClusterUuid = $someString
                 # REQUIRED
                 targetNamespaceName = $someString
                 # OPTIONAL
                 labelSelector = @{
                     # OPTIONAL
                     matchExpressions = @(
                         @{
                             # OPTIONAL
                             key = $someString
                             # OPTIONAL
                             operator = $someString
                             # OPTIONAL
                             values = @(
                                 $someString
                             )
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreNamespace operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: RestoreProtectionSetSnapshot
              
             $query = New-RscMutationK8s -RestoreProtectionSetSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 jobConfig = @{
                     # OPTIONAL
                     filter = $someString
                     # OPTIONAL
                     pvcNames = @(
                         $someString
                     )
                     # OPTIONAL
                     ignoreErrors = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreProtectionSetSnapshot operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: UpdateCluster
              
             $query = New-RscMutationK8s -UpdateCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     kubeconfig = $someString
                     # OPTIONAL
                     registry = $someString
                     # OPTIONAL
                     serviceAccountName = $someString
                     # OPTIONAL
                     pullSecret = $someString
                     # OPTIONAL
                     transport = $someString
                     # OPTIONAL
                     isAutoPsCreationEnabled = $someBoolean
                     # OPTIONAL
                     clientSecret = $someString
                     # OPTIONAL
                     accessToken = $someString
                     # OPTIONAL
                     cloudAccountId = $someString
                     # OPTIONAL
                     clientId = $someString
                     # OPTIONAL
                     kuprServerProxyConfig = @{
                         # OPTIONAL
                         port = $someInt
                         # REQUIRED
                         cert = $someString
                         # REQUIRED
                         ipAddress = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: UpdateProtectionSet
              
             $query = New-RscMutationK8s -UpdateProtectionSet
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     definition = $someString
                     # OPTIONAL
                     hookConfigs = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateProtectionSet operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationLdap</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationLdap</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'LDAP' API domain: DeletePrincipals, RemoveIntegration, SetMfaSetting, or UpdateIntegration.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationLdap creates a new mutation object for operations in the 'LDAP' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'LDAP' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: DeletePrincipals, RemoveIntegration, SetMfaSetting, or UpdateIntegration. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationLdap -DeletePrincipals).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationLdap -DeletePrincipals).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationLdap</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">DeletePrincipals</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemoveIntegration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetMfaSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateIntegration</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ldap
             # API Operation: DeletePrincipals
              
             $query = New-RscMutationLdap -DeletePrincipals
              
             # REQUIRED
             $query.Var.principalIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeletePrincipals operation of the 'LDAP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ldap
             # API Operation: RemoveIntegration
              
             $query = New-RscMutationLdap -RemoveIntegration
              
             # REQUIRED
             $query.Var.id = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveIntegration operation of the 'LDAP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ldap
             # API Operation: SetMfaSetting
              
             $query = New-RscMutationLdap -SetMfaSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 ldapId = $someString
                 # OPTIONAL
                 isTotpEnforced = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetMfaSetting operation of the 'LDAP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ldap
             # API Operation: UpdateIntegration
              
             $query = New-RscMutationLdap -UpdateIntegration
              
             # OPTIONAL
             $query.Var.id = $someString
             # REQUIRED
             $query.Var.name = $someString
             # REQUIRED
             $query.Var.bindUserName = $someString
             # REQUIRED
             $query.Var.bindUserPassword = $someString
             # OPTIONAL
             $query.Var.baseDn = $someString
             # OPTIONAL
             $query.Var.trustedCerts = $someString
             # OPTIONAL
             $query.Var.dynamicDnsName = $someString
             # OPTIONAL
             $query.Var.ldapServers = @(
                 @{
                     # OPTIONAL
                     hostname = $someString
                     # OPTIONAL
                     port = $someInt
                     # OPTIONAL
                     useTls = $someBoolean
             }
             )
             # OPTIONAL
             $query.Var.userSearchFilter = $someString
             # OPTIONAL
             $query.Var.userNameAttr = $someString
             # OPTIONAL
             $query.Var.groupMembershipAttr = $someString
             # OPTIONAL
             $query.Var.groupSearchFilter = $someString
             # OPTIONAL
             $query.Var.groupMemberAttr = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateIntegration operation of the 'LDAP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationM365</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationM365</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Microsoft 365' API domain: BackupMailbox, BackupOnedrive, BackupSharepointDrive, or BackupTeam.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationM365 creates a new mutation object for operations in the 'Microsoft 365' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Microsoft 365' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BackupMailbox, BackupOnedrive, BackupSharepointDrive, or BackupTeam. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationM365 -BackupMailbox).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationM365 -BackupMailbox).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationM365</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BackupMailbox</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BackupOnedrive</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BackupSharepointDrive</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BackupTeam</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: BackupMailbox
              
             $query = New-RscMutationM365 -BackupMailbox
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupMailbox operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: BackupOnedrive
              
             $query = New-RscMutationM365 -BackupOnedrive
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupOnedrive operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: BackupSharepointDrive
              
             $query = New-RscMutationM365 -BackupSharepointDrive
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupSharepointDrive operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: BackupTeam
              
             $query = New-RscMutationM365 -BackupTeam
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupTeam operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationManagedVolume</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationManagedVolume</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'Managed Volume' API domain: Add, BeginSnapshot, Delete, DeleteSnapshotExport, DownloadFiles, DownloadFromLocation, EndSnapshot, ExportSnapshot, Resize, TakeOnDemandSnapshot, or Update.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationManagedVolume creates a new mutation object for operations in the 'Managed Volume' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'Managed Volume' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Add, BeginSnapshot, Delete, DeleteSnapshotExport, DownloadFiles, DownloadFromLocation, EndSnapshot, ExportSnapshot, Resize, TakeOnDemandSnapshot, or Update. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationManagedVolume -Add).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationManagedVolume -Add).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationManagedVolume</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Add</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BeginSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Delete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSnapshotExport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EndSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Resize</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TakeOnDemandSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Update</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: Add
              
             $query = New-RscMutationManagedVolume -Add
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 managedVolumeConfig = @{
                     # OPTIONAL
                     numChannels = $someInt
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     applicationTag = $someManagedVolumeApplicationTag # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeApplicationTag]) for enum values.
                     # OPTIONAL
                     mvType = $someCdmManagedVolumeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmManagedVolumeType]) for enum values.
                     # REQUIRED
                     exportConfig = @{
                         # OPTIONAL
                         subnet = $someString
                         # OPTIONAL
                         shareType = $someManagedVolumeShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeShareType]) for enum values.
                         # OPTIONAL
                         managedVolumePatchConfig = @{
                             # OPTIONAL
                             hostPatterns = @(
                                 $someString
                             )
                             # OPTIONAL
                             nodeHint = @(
                                 $someString
                             )
                             # OPTIONAL
                             smbDomainName = $someString
                             # OPTIONAL
                             smbValidIps = @(
                                 $someString
                             )
                             # OPTIONAL
                             smbValidUsers = @(
                                 $someString
                             )
                         }
                     }
                     # REQUIRED
                     name = $someString
                     # OPTIONAL
                     slaClientConfig = @{
                         # OPTIONAL
                         shouldCancelBackupOnPreBackupScriptFailure = $someBoolean
                         # OPTIONAL
                         shouldEnableLogExport = $someBoolean
                         # REQUIRED
                         backupScript = @{
                             # OPTIONAL
                             timeout = $someInt64
                             # REQUIRED
                             scriptCommand = $someString
                         }
                         # REQUIRED
                         channelHostMountPaths = @(
                             $someString
                         )
                         # REQUIRED
                         clientHostId = $someString
                         # OPTIONAL
                         postBackupScriptOnBackupFailure = @{
                             # OPTIONAL
                             timeout = $someInt64
                             # REQUIRED
                             scriptCommand = $someString
                         }
                         # OPTIONAL
                         postBackupScriptOnBackupSuccess = @{
                             # OPTIONAL
                             timeout = $someInt64
                             # REQUIRED
                             scriptCommand = $someString
                         }
                         # OPTIONAL
                         preBackupScript = @{
                             # OPTIONAL
                             timeout = $someInt64
                             # REQUIRED
                             scriptCommand = $someString
                         }
                         # REQUIRED
                         username = $someString
                     }
                     # REQUIRED
                     volumeSize = $someInt64
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddManagedVolumeReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Add operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: BeginSnapshot
              
             $query = New-RscMutationManagedVolume -BeginSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 ownerId = $someString
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     isAsync = $someBoolean
                     # OPTIONAL
                     managedVolumeSnapshotReferenceWrapper = @{
                         # OPTIONAL
                         reference = @{
                             # OPTIONAL
                             managedVolumeSnapshotReferenceDefinition = @{
                                 # OPTIONAL
                                 managedVolumeSnapshotReferencePatch = @{
                                     # OPTIONAL
                                     expiryDurationInMinutes = $someInt
                                 }
                                 # REQUIRED
                                 ownerId = $someString
                             }
                             # REQUIRED
                             refId = $someString
                         }
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BeginManagedVolumeSnapshotReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BeginSnapshot operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: Delete
              
             $query = New-RscMutationManagedVolume -Delete
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 preserveSnapshots = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DeleteManagedVolumeReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Delete operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: DeleteSnapshotExport
              
             $query = New-RscMutationManagedVolume -DeleteSnapshotExport
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSnapshotExport operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: DownloadFiles
              
             $query = New-RscMutationManagedVolume -DownloadFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                     # REQUIRED
                     paths = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadFiles operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: DownloadFromLocation
              
             $query = New-RscMutationManagedVolume -DownloadFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadFromLocation operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: EndSnapshot
              
             $query = New-RscMutationManagedVolume -EndSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 endSnapshotDelayInSeconds = $someInt
                 # OPTIONAL
                 ownerId = $someString
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 params = @{
                     # OPTIONAL
                     isAsync = $someBoolean
                     # OPTIONAL
                     retentionConfig = @{
                         # OPTIONAL
                         slaId = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: EndManagedVolumeSnapshotReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the EndSnapshot operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: ExportSnapshot
              
             $query = New-RscMutationManagedVolume -ExportSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 params = @{
                     # OPTIONAL
                     shouldDownloadToLocal = $someBoolean
                     # OPTIONAL
                     managedVolumeExportConfig = @{
                         # OPTIONAL
                         subnet = $someString
                         # OPTIONAL
                         shareType = $someManagedVolumeShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeShareType]) for enum values.
                         # OPTIONAL
                         managedVolumePatchConfig = @{
                             # OPTIONAL
                             hostPatterns = @(
                                 $someString
                             )
                             # OPTIONAL
                             nodeHint = @(
                                 $someString
                             )
                             # OPTIONAL
                             smbDomainName = $someString
                             # OPTIONAL
                             smbValidIps = @(
                                 $someString
                             )
                             # OPTIONAL
                             smbValidUsers = @(
                                 $someString
                             )
                         }
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportSnapshot operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: Resize
              
             $query = New-RscMutationManagedVolume -Resize
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 size = @{
                     # OPTIONAL
                     newSize = $someInt64
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the Resize operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: TakeOnDemandSnapshot
              
             $query = New-RscMutationManagedVolume -TakeOnDemandSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     retentionConfig = @{
                         # OPTIONAL
                         slaId = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the TakeOnDemandSnapshot operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: Update
              
             $query = New-RscMutationManagedVolume -Update
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 update = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     name = $someString
                     # OPTIONAL
                     volumeSize = $someInt64
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     config = @{
                         # OPTIONAL
                         hostPatterns = @(
                             $someString
                         )
                         # OPTIONAL
                         nodeHint = @(
                             $someString
                         )
                         # OPTIONAL
                         smbDomainName = $someString
                         # OPTIONAL
                         smbValidIps = @(
                             $someString
                         )
                         # OPTIONAL
                         smbValidUsers = @(
                             $someString
                         )
                     }
                     # OPTIONAL
                     slaClientConfig = @{
                         # OPTIONAL
                         backupScriptCommand = $someString
                         # OPTIONAL
                         backupScriptTimeout = $someInt64
                         # OPTIONAL
                         channelHostMountPaths = @(
                             $someString
                         )
                         # OPTIONAL
                         clientHostId = $someString
                         # OPTIONAL
                         postBackupScriptOnBackupFailureCommand = $someString
                         # OPTIONAL
                         postBackupScriptOnBackupFailureTimeout = $someInt64
                         # OPTIONAL
                         postBackupScriptOnBackupSuccessCommand = $someString
                         # OPTIONAL
                         postBackupScriptOnBackupSuccessTimeout = $someInt64
                         # OPTIONAL
                         preBackupScriptCommand = $someString
                         # OPTIONAL
                         preBackupScriptTimeout = $someInt64
                         # OPTIONAL
                         shouldCancelBackupOnPreBackupScriptFailure = $someBoolean
                         # OPTIONAL
                         username = $someString
                         # REQUIRED
                         shouldDisablePostBackupScriptOnBackupFailure = $someBoolean
                         # REQUIRED
                         shouldDisablePostBackupScriptOnBackupSuccess = $someBoolean
                         # REQUIRED
                         shouldDisablePreBackupScript = $someBoolean
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateManagedVolumeReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationMisc</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationMisc</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 134 operations in the 'Miscellaneous' API domain: AddAdGroupsToHierarchy, AddConfiguredGroupToHierarchy, AddCustomIntelFeed, AddInventoryWorkloads, AddRoleAssignments, AddVlan, AddVmAppConsistentSpecs, AirGapStatus, ArchiveCrawl, AssignProtection, BatchDeassignRoleFromUserGroups, BulkCreateNasFilesets, CancelDownloadPackage, CancelScheduledUpgrade, CancelTaskchain, ChangePassword, CreateCustomAnalyzer, CreateEventDigestBatch, CreateGuestCredential, CreateLegalHold, CreateOnDemandVolumeGroupBackup, CreateVappsInstantRecovery, DeactivateCustomAnalyzer, DeleteAdGroupsFromHierarchy, DeleteDistributionListDigestBatch, DeleteEventDigest, DeleteGuestCredentialById, DeleteIntelFeed, DeleteVolumeGroupMount, DeregisterPrivateContainerRegistry, DisableSupportUserAccess, DissolveLegalHold, EnableAutomaticFmdUpload, EnableDisableAppConsistency, EnableSupportUserAccess, ExcludeVmDisks, ExpireSnoozedDirectories, GenerateConfigProtectionRestoreForm, GenerateSupportBundle, GetDownloadUrl, HideRevealNasNamespaces, InstallIoFilter, InviteSsoGroup, ListCidrsForComputeSetting, LockUsersByAdmin, LogoutFromRubrikSupportPortal, MakePrimary, ManageProtectionForLinkedObjects, ModifyEventDigestBatch, ModifyIpmi, MountDisk, NotificationForGetLicense, RecoverCloudDirectMultiPaths, RecoverCloudDirectPath, RefreshDomain, RefreshGlobalManagerConnectivityStatus, RemoveDisk, RemoveInventoryWorkloads, RemovePrivateEndpointList, RemoveProxyConfig, RemoveVlans, ReseedLogShippingSecondary, ResetAllOrgUsersPasswords, ResetUsersPasswordsWithUserIds, ResizeDisk, ResolveAnomaly, ResolveVolumeGroupsConflict, RetryBackup, RetryDownloadPackageJob, RevokeAllOrgRoles, RunCustomAnalyzer, ScheduleUpgradeBatchJob, SetAnalyzerRisks, SetBundleApprovalStatus, SetCustomerTags, SetDatastoreFreespaceThresholds, SetIpWhitelistEnabled, SetMfaSetting, SetPrivateContainerRegistry, SetTotpConfig, SetUpgradeType, SetUserLevelTotpEnforcement, SetWorkloadAlertSetting, SetupDisk, StartCrawl, StartDownloadPackageBatchJob, StartExportRdsInstanceJob, StartPeriodicUpgradePrechecksOnDemandJob, StartUpgradeBatchJob, StartVolumeGroupMount, StopJobInstance, StopJobInstanceFromEventSeries, SupportPortalLogin, SwitchProductToOnboardingMode, TriggerCloudComputeConnectivityCheck, TriggerExocomputeHealthCheck, UninstallIoFilter, UnlockUsersByAdmin, UnmountDisk, UpdateAccountOwner, UpdateAdGroup, UpdateAgentDeploymentSetting, UpdateAgentDeploymentSettingInBatch, UpdateAuthDomainUsersHiddenStatus, UpdateBackupThrottleSetting, UpdateBadDiskLedStatus, UpdateConfiguredGroup, UpdateCustomAnalyzer, UpdateCustomIntelFeed, UpdateCustomerAppPermissions, UpdateDistributionListDigest, UpdateDnsServersAndSearchDomains, UpdateEventDigest, UpdateFloatingIps, UpdateGuestCredential, UpdateInsightState, UpdateIocStatus, UpdateIpWhitelist, UpdateLambdaSettings, UpdateLockoutConfig, UpdateManagedIdentities, UpdateNetworkThrottle, UpdateProxyConfig, UpdateRoleAssignments, UpdateSupportUserAccess, UpdateTunnelStatus, UpdateVlan, UpdateVolumeGroup, UpdateWhitelistedAnalyzers, UpgradeIoFilter, UpgradeToRsc, ValidateAndSaveCustomerKmsInfo, VmMakePrimary, or WarmSearchCache.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationMisc creates a new mutation object for operations in the 'Miscellaneous' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 134 operations in the 'Miscellaneous' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddAdGroupsToHierarchy, AddConfiguredGroupToHierarchy, AddCustomIntelFeed, AddInventoryWorkloads, AddRoleAssignments, AddVlan, AddVmAppConsistentSpecs, AirGapStatus, ArchiveCrawl, AssignProtection, BatchDeassignRoleFromUserGroups, BulkCreateNasFilesets, CancelDownloadPackage, CancelScheduledUpgrade, CancelTaskchain, ChangePassword, CreateCustomAnalyzer, CreateEventDigestBatch, CreateGuestCredential, CreateLegalHold, CreateOnDemandVolumeGroupBackup, CreateVappsInstantRecovery, DeactivateCustomAnalyzer, DeleteAdGroupsFromHierarchy, DeleteDistributionListDigestBatch, DeleteEventDigest, DeleteGuestCredentialById, DeleteIntelFeed, DeleteVolumeGroupMount, DeregisterPrivateContainerRegistry, DisableSupportUserAccess, DissolveLegalHold, EnableAutomaticFmdUpload, EnableDisableAppConsistency, EnableSupportUserAccess, ExcludeVmDisks, ExpireSnoozedDirectories, GenerateConfigProtectionRestoreForm, GenerateSupportBundle, GetDownloadUrl, HideRevealNasNamespaces, InstallIoFilter, InviteSsoGroup, ListCidrsForComputeSetting, LockUsersByAdmin, LogoutFromRubrikSupportPortal, MakePrimary, ManageProtectionForLinkedObjects, ModifyEventDigestBatch, ModifyIpmi, MountDisk, NotificationForGetLicense, RecoverCloudDirectMultiPaths, RecoverCloudDirectPath, RefreshDomain, RefreshGlobalManagerConnectivityStatus, RemoveDisk, RemoveInventoryWorkloads, RemovePrivateEndpointList, RemoveProxyConfig, RemoveVlans, ReseedLogShippingSecondary, ResetAllOrgUsersPasswords, ResetUsersPasswordsWithUserIds, ResizeDisk, ResolveAnomaly, ResolveVolumeGroupsConflict, RetryBackup, RetryDownloadPackageJob, RevokeAllOrgRoles, RunCustomAnalyzer, ScheduleUpgradeBatchJob, SetAnalyzerRisks, SetBundleApprovalStatus, SetCustomerTags, SetDatastoreFreespaceThresholds, SetIpWhitelistEnabled, SetMfaSetting, SetPrivateContainerRegistry, SetTotpConfig, SetUpgradeType, SetUserLevelTotpEnforcement, SetWorkloadAlertSetting, SetupDisk, StartCrawl, StartDownloadPackageBatchJob, StartExportRdsInstanceJob, StartPeriodicUpgradePrechecksOnDemandJob, StartUpgradeBatchJob, StartVolumeGroupMount, StopJobInstance, StopJobInstanceFromEventSeries, SupportPortalLogin, SwitchProductToOnboardingMode, TriggerCloudComputeConnectivityCheck, TriggerExocomputeHealthCheck, UninstallIoFilter, UnlockUsersByAdmin, UnmountDisk, UpdateAccountOwner, UpdateAdGroup, UpdateAgentDeploymentSetting, UpdateAgentDeploymentSettingInBatch, UpdateAuthDomainUsersHiddenStatus, UpdateBackupThrottleSetting, UpdateBadDiskLedStatus, UpdateConfiguredGroup, UpdateCustomAnalyzer, UpdateCustomIntelFeed, UpdateCustomerAppPermissions, UpdateDistributionListDigest, UpdateDnsServersAndSearchDomains, UpdateEventDigest, UpdateFloatingIps, UpdateGuestCredential, UpdateInsightState, UpdateIocStatus, UpdateIpWhitelist, UpdateLambdaSettings, UpdateLockoutConfig, UpdateManagedIdentities, UpdateNetworkThrottle, UpdateProxyConfig, UpdateRoleAssignments, UpdateSupportUserAccess, UpdateTunnelStatus, UpdateVlan, UpdateVolumeGroup, UpdateWhitelistedAnalyzers, UpgradeIoFilter, UpgradeToRsc, ValidateAndSaveCustomerKmsInfo, VmMakePrimary, or WarmSearchCache. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMisc -AddAdGroupsToHierarchy).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMisc -AddAdGroupsToHierarchy).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationMisc</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddAdGroupsToHierarchy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddConfiguredGroupToHierarchy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddCustomIntelFeed</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddInventoryWorkloads</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddRoleAssignments</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddVlan</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AddVmAppConsistentSpecs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AirGapStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ArchiveCrawl</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AssignProtection</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchDeassignRoleFromUserGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkCreateNasFilesets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CancelDownloadPackage</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CancelScheduledUpgrade</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CancelTaskchain</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ChangePassword</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCustomAnalyzer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateEventDigestBatch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateGuestCredential</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateLegalHold</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOnDemandVolumeGroupBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateVappsInstantRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeactivateCustomAnalyzer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteAdGroupsFromHierarchy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteDistributionListDigestBatch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteEventDigest</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteGuestCredentialById</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteIntelFeed</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteVolumeGroupMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeregisterPrivateContainerRegistry</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DisableSupportUserAccess</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DissolveLegalHold</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EnableAutomaticFmdUpload</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EnableDisableAppConsistency</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EnableSupportUserAccess</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExcludeVmDisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExpireSnoozedDirectories</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GenerateConfigProtectionRestoreForm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GenerateSupportBundle</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GetDownloadUrl</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HideRevealNasNamespaces</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InstallIoFilter</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InviteSsoGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ListCidrsForComputeSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LockUsersByAdmin</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LogoutFromRubrikSupportPortal</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MakePrimary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManageProtectionForLinkedObjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ModifyEventDigestBatch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ModifyIpmi</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MountDisk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NotificationForGetLicense</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverCloudDirectMultiPaths</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverCloudDirectPath</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshDomain</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshGlobalManagerConnectivityStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemoveDisk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemoveInventoryWorkloads</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemovePrivateEndpointList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemoveProxyConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemoveVlans</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ReseedLogShippingSecondary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResetAllOrgUsersPasswords</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResetUsersPasswordsWithUserIds</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResizeDisk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResolveAnomaly</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResolveVolumeGroupsConflict</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RetryBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RetryDownloadPackageJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RevokeAllOrgRoles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RunCustomAnalyzer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ScheduleUpgradeBatchJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetAnalyzerRisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetBundleApprovalStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetCustomerTags</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetDatastoreFreespaceThresholds</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetIpWhitelistEnabled</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetMfaSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetPrivateContainerRegistry</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetTotpConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetUpgradeType</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetUserLevelTotpEnforcement</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetWorkloadAlertSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetupDisk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartCrawl</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartDownloadPackageBatchJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartExportRdsInstanceJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartPeriodicUpgradePrechecksOnDemandJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartUpgradeBatchJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartVolumeGroupMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StopJobInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StopJobInstanceFromEventSeries</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SupportPortalLogin</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SwitchProductToOnboardingMode</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TriggerCloudComputeConnectivityCheck</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TriggerExocomputeHealthCheck</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UninstallIoFilter</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UnlockUsersByAdmin</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UnmountDisk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAccountOwner</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAdGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAgentDeploymentSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAgentDeploymentSettingInBatch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAuthDomainUsersHiddenStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateBackupThrottleSetting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateBadDiskLedStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateConfiguredGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCustomAnalyzer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCustomIntelFeed</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCustomerAppPermissions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateDistributionListDigest</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateDnsServersAndSearchDomains</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateEventDigest</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateFloatingIps</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateGuestCredential</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateInsightState</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateIocStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateIpWhitelist</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateLambdaSettings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateLockoutConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateManagedIdentities</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateNetworkThrottle</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateProxyConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateRoleAssignments</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateSupportUserAccess</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTunnelStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateVlan</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateVolumeGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateWhitelistedAnalyzers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeIoFilter</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpgradeToRsc</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateAndSaveCustomerKmsInfo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VmMakePrimary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">WarmSearchCache</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AddAdGroupsToHierarchy
              
             $query = New-RscMutationMisc -AddAdGroupsToHierarchy
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 naturalIds = @(
                     $someString
                 )
                 # OPTIONAL
                 adGroupSpec = @(
                     @{
                         # REQUIRED
                         naturalId = $someString
                         # OPTIONAL
                         displayName = $someString
                         # REQUIRED
                         filterAttributes = @(
                             @{
                                 # OPTIONAL
                                 filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values.
                                 # OPTIONAL
                                 attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values.
                                 # OPTIONAL
                                 attributeKey = $someString
                                 # OPTIONAL
                                 attributeValue = $someString
                                 # OPTIONAL
                                 dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values.
                             }
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddAdGroupsToHierarchy operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AddConfiguredGroupToHierarchy
              
             $query = New-RscMutationMisc -AddConfiguredGroupToHierarchy
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 displayName = $someString
                 # OPTIONAL
                 wildcard = $someString
                 # REQUIRED
                 pdls = @(
                     $someString
                 )
                 # OPTIONAL
                 workload = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                 # OPTIONAL
                 groupFilterAttributes = @(
                     @{
                         # OPTIONAL
                         filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values.
                         # OPTIONAL
                         attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values.
                         # OPTIONAL
                         attributeKey = $someString
                         # OPTIONAL
                         attributeValue = $someString
                         # OPTIONAL
                         dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddConfiguredGroupToHierarchyReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddConfiguredGroupToHierarchy operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AddCustomIntelFeed
              
             $query = New-RscMutationMisc -AddCustomIntelFeed
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 userId = $someString
                 # REQUIRED
                 entries = @(
                     @{
                         # OPTIONAL
                         iocString = $someString
                         # OPTIONAL
                         threatFamily = $someString
                         # REQUIRED
                         iocType = $someThreatFeedType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatFeedType]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddCustomIntelFeedReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddCustomIntelFeed operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AddInventoryWorkloads
              
             $query = New-RscMutationMisc -AddInventoryWorkloads
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 inventoryCards = @(
                     $someInventoryCard # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventoryCard]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddInventoryWorkloads operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AddRoleAssignments
              
             $query = New-RscMutationMisc -AddRoleAssignments
              
             # OPTIONAL
             $query.Var.userIds = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.groupIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.roleIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddRoleAssignments operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AddVlan
              
             $query = New-RscMutationMisc -AddVlan
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 vlanInfo = @{
                     # OPTIONAL
                     gateway = $someString
                     # OPTIONAL
                     alias = $someString
                     # REQUIRED
                     interfaces = @(
                         @{
                             # REQUIRED
                             ip = $someString
                             # REQUIRED
                             node = $someString
                         }
                     )
                     # REQUIRED
                     netmask = $someString
                     # REQUIRED
                     vlan = $someInt
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddVlan operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AddVmAppConsistentSpecs
              
             $query = New-RscMutationMisc -AddVmAppConsistentSpecs
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snappableIds = @(
                     $someString
                 )
                 # OPTIONAL
                 preSnapshotScriptPath = $someString
                 # OPTIONAL
                 preSnapshotScriptTimeoutInSeconds = $someInt
                 # OPTIONAL
                 postSnapshotScriptPath = $someString
                 # OPTIONAL
                 postSnapshotScriptTimeoutInSeconds = $someInt
                 # REQUIRED
                 cancelBackupIfPreScriptFails = $someBoolean
                 # REQUIRED
                 objectType = $someCloudNativeVmAppConsistentObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeVmAppConsistentObjectType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddVmAppConsistentSpecsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddVmAppConsistentSpecs operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AirGapStatus
              
             $query = New-RscMutationMisc -AirGapStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 isAirGapped = $someBoolean
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the AirGapStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ArchiveCrawl
              
             $query = New-RscMutationMisc -ArchiveCrawl
              
             # REQUIRED
             $query.Var.crawlId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ArchiveCrawl operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AssignProtection
              
             $query = New-RscMutationMisc -AssignProtection
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 globalSlaOptionalFid = $someString
                 # REQUIRED
                 globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values.
                 # REQUIRED
                 objectIds = @(
                     $someString
                 )
                 # REQUIRED
                 backupInput = @{
                     # OPTIONAL
                     mosaicBackupStoreInfo = @{
                         # OPTIONAL
                         storeName = $someString
                     }
                     # OPTIONAL
                     mosaicMonitorInfo = @{
                         # OPTIONAL
                         isEnabled = $someBoolean
                         # OPTIONAL
                         frequency = $someInt
                         # OPTIONAL
                         frequencyUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values.
                     }
                     # OPTIONAL
                     shouldBackupIndex = $someBoolean
                     # OPTIONAL
                     shouldDelete = $someBoolean
                     # OPTIONAL
                     shouldDeleteData = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SlaAssignResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignProtection operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BatchDeassignRoleFromUserGroups
              
             $query = New-RscMutationMisc -BatchDeassignRoleFromUserGroups
              
             # REQUIRED
             $query.Var.userGroupToRoles = @(
                 @{
                     # OPTIONAL
                     userGroupId = $someString
                     # OPTIONAL
                     roleIds = @(
                         $someString
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchDeassignRoleFromUserGroups operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BulkCreateNasFilesets
              
             $query = New-RscMutationMisc -BulkCreateNasFilesets
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkRequest = @{
                     # OPTIONAL
                     isHardlinkSupportEnabled = $someBoolean
                     # OPTIONAL
                     isPassthrough = $someBoolean
                     # OPTIONAL
                     snapMirrorLabelForFullBackup = $someString
                     # OPTIONAL
                     snapMirrorLabelForIncrementalBackup = $someString
                     # REQUIRED
                     filesetTemplate = @{
                         # OPTIONAL
                         backupScriptErrorHandling = $someString
                         # OPTIONAL
                         backupScriptTimeout = $someInt64
                         # OPTIONAL
                         exceptions = @(
                             $someString
                         )
                         # OPTIONAL
                         excludes = @(
                             $someString
                         )
                         # OPTIONAL
                         isArrayEnabled = $someBoolean
                         # OPTIONAL
                         postBackupScript = $someString
                         # OPTIONAL
                         preBackupScript = $someString
                         # OPTIONAL
                         isCreatedByKupr = $someBoolean
                         # OPTIONAL
                         isCreatedByPolarisNas = $someBoolean
                         # OPTIONAL
                         operatingSystemType = $someFilesetTemplateCreateOperatingSystemType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateOperatingSystemType]) for enum values.
                         # OPTIONAL
                         shareType = $someFilesetTemplateCreateShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateShareType]) for enum values.
                         # OPTIONAL
                         filesetOptions = @{
                             # OPTIONAL
                             allowBackupHiddenFoldersInNetworkMounts = $someBoolean
                             # OPTIONAL
                             allowBackupNetworkMounts = $someBoolean
                             # OPTIONAL
                             useWindowsVss = $someBoolean
                         }
                         # REQUIRED
                         includes = @(
                             $someString
                         )
                         # REQUIRED
                         name = $someString
                     }
                     # REQUIRED
                     nasShareIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkCreateNasFilesetsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkCreateNasFilesets operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CancelDownloadPackage
              
             $query = New-RscMutationMisc -CancelDownloadPackage
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CancelJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CancelDownloadPackage operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CancelScheduledUpgrade
              
             $query = New-RscMutationMisc -CancelScheduledUpgrade
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CancelJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CancelScheduledUpgrade operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CancelTaskchain
              
             $query = New-RscMutationMisc -CancelTaskchain
              
             # REQUIRED
             $query.Var.taskchainId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CancelTaskchain operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ChangePassword
              
             $query = New-RscMutationMisc -ChangePassword
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 email = $someString
                 # OPTIONAL
                 password = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the ChangePassword operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CreateCustomAnalyzer
              
             $query = New-RscMutationMisc -CreateCustomAnalyzer
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 analyzerType = $someAnalyzerTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerTypeEnum]) for enum values.
                 # OPTIONAL
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 dictionaryCsv = $someString
                 # OPTIONAL
                 dictionary = @(
                     $someString
                 )
                 # OPTIONAL
                 regex = $someString
                 # OPTIONAL
                 analyzerRiskInstance = @{
                     # OPTIONAL
                     analyzerId = $someString
                     # OPTIONAL
                     riskVersion = $someInt
                     # OPTIONAL
                     risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
                 }
                 # OPTIONAL
                 tagId = $someInt
                 # OPTIONAL
                 risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Analyzer</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCustomAnalyzer operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CreateEventDigestBatch
              
             $query = New-RscMutationMisc -CreateEventDigestBatch
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 digests = @(
                     @{
                         # OPTIONAL
                         digestId = $someInt
                         # REQUIRED
                         digestName = $someString
                         # REQUIRED
                         frequencyHours = $someInt
                         # REQUIRED
                         isImmediate = $someBoolean
                         # REQUIRED
                         includeAudits = $someBoolean
                         # REQUIRED
                         includeEvents = $someBoolean
                         # REQUIRED
                         eventDigestConfig = @{
                             # OPTIONAL
                             objectType = @(
                                 $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                             )
                             # OPTIONAL
                             activityStatus = @(
                                 $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                             )
                             # OPTIONAL
                             activityType = @(
                                 $someString
                             )
                             # OPTIONAL
                             auditType = @(
                                 $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                             )
                             # OPTIONAL
                             activitySeverity = @(
                                 $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values.
                             )
                             # OPTIONAL
                             clusters = @(
                                 $someString
                             )
                             # OPTIONAL
                             emailAddresses = @(
                                 $someString
                             )
                         }
                         # REQUIRED
                         recipientUserId = $someString
                         # REQUIRED
                         clusterUuids = @(
                             $someString
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateEventDigestBatch operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CreateGuestCredential
              
             $query = New-RscMutationMisc -CreateGuestCredential
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 definition = @{
                     # OPTIONAL
                     domain = $someString
                     # OPTIONAL
                     description = $someString
                     # OPTIONAL
                     baseGuestCredential = @{
                         # REQUIRED
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateGuestCredentialReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateGuestCredential operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CreateLegalHold
              
             $query = New-RscMutationMisc -CreateLegalHold
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 snapshotIds = @(
                     $someString
                 )
                 # OPTIONAL
                 holdConfig = @{
                     # OPTIONAL
                     shouldHoldInPlace = $someBoolean
                 }
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateLegalHoldReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateLegalHold operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CreateOnDemandVolumeGroupBackup
              
             $query = New-RscMutationMisc -CreateOnDemandVolumeGroupBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     volumeIdsIncludedInSnapshot = @(
                         $someString
                     )
                     # OPTIONAL
                     baseOnDemandSnapshotConfig = @{
                         # OPTIONAL
                         slaId = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOnDemandVolumeGroupBackup operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CreateVappsInstantRecovery
              
             $query = New-RscMutationMisc -CreateVappsInstantRecovery
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 inputs = @(
                     @{
                         # REQUIRED
                         config = @{
                             # OPTIONAL
                             shouldPowerOnVmsAfterRecovery = $someBoolean
                             # REQUIRED
                             vmsToRestore = @(
                                 @{
                                     # OPTIONAL
                                     storagePolicyId = $someString
                                     # REQUIRED
                                     name = $someString
                                     # REQUIRED
                                     networkConnections = @(
                                         @{
                                             # OPTIONAL
                                             ipAddress = $someString
                                             # OPTIONAL
                                             macAddress = $someString
                                             # OPTIONAL
                                             vappNetworkName = $someString
                                             # OPTIONAL
                                             networkAdapterType = $someString
                                             # REQUIRED
                                             addressingMode = $someVappVmIpAddressingMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VappVmIpAddressingMode]) for enum values.
                                             # REQUIRED
                                             isConnected = $someBoolean
                                             # REQUIRED
                                             nicIndex = $someInt
                                         }
                                     )
                                     # REQUIRED
                                     vcdMoid = $someString
                                 }
                             )
                         }
                         # REQUIRED
                         snapshotId = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateVappsInstantRecoveryReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateVappsInstantRecovery operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeactivateCustomAnalyzer
              
             $query = New-RscMutationMisc -DeactivateCustomAnalyzer
              
             # REQUIRED
             $query.Var.analyzerId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeactivateCustomAnalyzer operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeleteAdGroupsFromHierarchy
              
             $query = New-RscMutationMisc -DeleteAdGroupsFromHierarchy
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 groupIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteAdGroupsFromHierarchy operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeleteDistributionListDigestBatch
              
             $query = New-RscMutationMisc -DeleteDistributionListDigestBatch
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 digestIds = @(
                     $someInt
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteDistributionListDigestBatch operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeleteEventDigest
              
             $query = New-RscMutationMisc -DeleteEventDigest
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 recipientUserIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteEventDigest operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeleteGuestCredentialById
              
             $query = New-RscMutationMisc -DeleteGuestCredentialById
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteGuestCredentialById operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeleteIntelFeed
              
             $query = New-RscMutationMisc -DeleteIntelFeed
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 providerId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteIntelFeed operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeleteVolumeGroupMount
              
             $query = New-RscMutationMisc -DeleteVolumeGroupMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteVolumeGroupMount operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeregisterPrivateContainerRegistry
              
             $query = New-RscMutationMisc -DeregisterPrivateContainerRegistry
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 exocomputeAccountId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeregisterPrivateContainerRegistry operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DisableSupportUserAccess
              
             $query = New-RscMutationMisc -DisableSupportUserAccess
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someInt
                 # OPTIONAL
                 impersonatedUserId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DisableSupportUserAccess operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 32 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DissolveLegalHold
              
             $query = New-RscMutationMisc -DissolveLegalHold
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 snapshotIds = @(
                     $someString
                 )
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DissolveLegalHoldReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DissolveLegalHold operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 33 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: EnableAutomaticFmdUpload
              
             $query = New-RscMutationMisc -EnableAutomaticFmdUpload
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterId = $someString
                 # REQUIRED
                 enabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: EnableAutomaticFmdUploadReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableAutomaticFmdUpload operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 34 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: EnableDisableAppConsistency
              
             $query = New-RscMutationMisc -EnableDisableAppConsistency
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadIds = @(
                     $someString
                 )
                 # REQUIRED
                 enable = $someBoolean
                 # REQUIRED
                 objectType = $someCloudNativeVmAppConsistentObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeVmAppConsistentObjectType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: EnableDisableAppConsistencyReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableDisableAppConsistency operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 35 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: EnableSupportUserAccess
              
             $query = New-RscMutationMisc -EnableSupportUserAccess
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 impersonatedUserId = $someString
                 # OPTIONAL
                 ticketNumber = $someString
                 # OPTIONAL
                 durationInHours = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableSupportUserAccess operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 36 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ExcludeVmDisks
              
             $query = New-RscMutationMisc -ExcludeVmDisks
              
             # REQUIRED
             $query.Var.input = @(
                 @{
                     # REQUIRED
                     virtualDiskFid = $someString
                     # REQUIRED
                     excludeFromSnapshots = $someBoolean
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExcludeVmDisks operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 37 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ExpireSnoozedDirectories
              
             $query = New-RscMutationMisc -ExpireSnoozedDirectories
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 directories = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExpireSnoozedDirectoriesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExpireSnoozedDirectories operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 38 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GenerateConfigProtectionRestoreForm
              
             $query = New-RscMutationMisc -GenerateConfigProtectionRestoreForm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 restoreFormRequest = @{
                     # REQUIRED
                     backupFileName = $someString
                     # REQUIRED
                     encryptionPassword = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GenerateConfigProtectionRestoreFormReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GenerateConfigProtectionRestoreForm operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 39 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GenerateSupportBundle
              
             $query = New-RscMutationMisc -GenerateSupportBundle
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # OPTIONAL
                 definitions = @{
                     # OPTIONAL
                     eventId = $someString
                     # OPTIONAL
                     requestIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the GenerateSupportBundle operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 40 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetDownloadUrl
              
             $query = New-RscMutationMisc -GetDownloadUrl
              
             # REQUIRED
             $query.Var.downloadId = $someInt64
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UserDownloadUrl</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetDownloadUrl operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 41 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: HideRevealNasNamespaces
              
             $query = New-RscMutationMisc -HideRevealNasNamespaces
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 hideNasNamespacesRequest = @{
                     # REQUIRED
                     action = $someHideRevealAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HideRevealAction]) for enum values.
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the HideRevealNasNamespaces operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 42 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: InstallIoFilter
              
             $query = New-RscMutationMisc -InstallIoFilter
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 fqdnInfo = @{
                     # REQUIRED
                     fqdn = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the InstallIoFilter operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 43 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: InviteSsoGroup
              
             $query = New-RscMutationMisc -InviteSsoGroup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 groupName = $someString
                 # REQUIRED
                 roleIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the InviteSsoGroup operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 44 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ListCidrsForComputeSetting
              
             $query = New-RscMutationMisc -ListCidrsForComputeSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListCidrsForComputeSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ListCidrsForComputeSetting operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 45 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: LockUsersByAdmin
              
             $query = New-RscMutationMisc -LockUsersByAdmin
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 userIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the LockUsersByAdmin operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 46 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: LogoutFromRubrikSupportPortal
              
             $query = New-RscMutationMisc -LogoutFromRubrikSupportPortal
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SupportPortalLogoutReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the LogoutFromRubrikSupportPortal operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 47 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: MakePrimary
              
             $query = New-RscMutationMisc -MakePrimary
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 hosts = @{
                     # OPTIONAL
                     ids = @(
                         $someString
                     )
                     # OPTIONAL
                     oldPrimaryClusterUuid = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the MakePrimary operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 48 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ManageProtectionForLinkedObjects
              
             $query = New-RscMutationMisc -ManageProtectionForLinkedObjects
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 operation = $someManageProtectionForLinkedObjectsOperationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManageProtectionForLinkedObjectsOperationType]) for enum values.
                 # REQUIRED
                 assignSlaReq = @{
                     # REQUIRED
                     slaDomainAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values.
                     # OPTIONAL
                     slaOptionalId = $someString
                     # REQUIRED
                     objectIds = @(
                         $someString
                     )
                     # OPTIONAL
                     applicableWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                     # OPTIONAL
                     shouldApplyToExistingSnapshots = $someBoolean
                     # OPTIONAL
                     shouldApplyToNonPolicySnapshots = $someBoolean
                     # OPTIONAL
                     existingSnapshotRetention = $someGlobalExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalExistingSnapshotRetention]) for enum values.
                     # OPTIONAL
                     userNote = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManageProtectionForLinkedObjects operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 49 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ModifyEventDigestBatch
              
             $query = New-RscMutationMisc -ModifyEventDigestBatch
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 digests = @(
                     @{
                         # OPTIONAL
                         digestId = $someInt
                         # REQUIRED
                         digestName = $someString
                         # REQUIRED
                         frequencyHours = $someInt
                         # REQUIRED
                         isImmediate = $someBoolean
                         # REQUIRED
                         includeAudits = $someBoolean
                         # REQUIRED
                         includeEvents = $someBoolean
                         # REQUIRED
                         eventDigestConfig = @{
                             # OPTIONAL
                             objectType = @(
                                 $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                             )
                             # OPTIONAL
                             activityStatus = @(
                                 $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                             )
                             # OPTIONAL
                             activityType = @(
                                 $someString
                             )
                             # OPTIONAL
                             auditType = @(
                                 $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                             )
                             # OPTIONAL
                             activitySeverity = @(
                                 $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values.
                             )
                             # OPTIONAL
                             clusters = @(
                                 $someString
                             )
                             # OPTIONAL
                             emailAddresses = @(
                                 $someString
                             )
                         }
                         # REQUIRED
                         recipientUserId = $someString
                         # REQUIRED
                         clusterUuids = @(
                             $someString
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ModifyEventDigestBatch operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 50 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ModifyIpmi
              
             $query = New-RscMutationMisc -ModifyIpmi
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 updateProperties = @{
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     access = @{
                         # OPTIONAL
                         https = $someBoolean
                         # OPTIONAL
                         iKvm = $someBoolean
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ModifyIpmiReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ModifyIpmi operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 51 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: MountDisk
              
             $query = New-RscMutationMisc -MountDisk
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 targetWorkloadId = $someString
                 # REQUIRED
                 snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values.
                 # REQUIRED
                 mountDiskIds = @(
                     $someString
                 )
                 # REQUIRED
                 workloadType = $someCloudNativeObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeObjectType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MountDiskReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the MountDisk operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 52 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: NotificationForGetLicense
              
             $query = New-RscMutationMisc -NotificationForGetLicense
              
             # OPTIONAL
             $query.Var.input = @{
                 # REQUIRED
                 notificationType = $someGetLicenseNotificationRequest # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GetLicenseNotificationRequest]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NotificationForGetLicenseReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the NotificationForGetLicense operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 53 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RecoverCloudDirectMultiPaths
              
             $query = New-RscMutationMisc -RecoverCloudDirectMultiPaths
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotFid = $someString
                 # REQUIRED
                 restorePathPairList = @(
                     @{
                         # REQUIRED
                         srcPath = $someString
                         # REQUIRED
                         dstPath = $someString
                     }
                 )
                 # OPTIONAL
                 dstExportId = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverCloudDirectMultiPaths operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 54 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RecoverCloudDirectPath
              
             $query = New-RscMutationMisc -RecoverCloudDirectPath
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotFid = $someString
                 # REQUIRED
                 srcPath = $someString
                 # OPTIONAL
                 dstPath = $someString
                 # OPTIONAL
                 dstExportId = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverCloudDirectPath operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 55 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RefreshDomain
              
             $query = New-RscMutationMisc -RefreshDomain
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshDomain operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 56 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RefreshGlobalManagerConnectivityStatus
              
             $query = New-RscMutationMisc -RefreshGlobalManagerConnectivityStatus
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GlobalManagerConnectivity</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshGlobalManagerConnectivityStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 57 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RemoveDisk
              
             $query = New-RscMutationMisc -RemoveDisk
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 diskId = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveDisk operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 58 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RemoveInventoryWorkloads
              
             $query = New-RscMutationMisc -RemoveInventoryWorkloads
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 inventoryCards = @(
                     $someInventoryCard # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventoryCard]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveInventoryWorkloads operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 59 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RemovePrivateEndpointList
              
             $query = New-RscMutationMisc -RemovePrivateEndpointList
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 privateEndpointId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemovePrivateEndpointList operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 60 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RemoveProxyConfig
              
             $query = New-RscMutationMisc -RemoveProxyConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveProxyConfig operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 61 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RemoveVlans
              
             $query = New-RscMutationMisc -RemoveVlans
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 vlanIds = @(
                     $someInt
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RemoveVlansReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveVlans operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 62 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ReseedLogShippingSecondary
              
             $query = New-RscMutationMisc -ReseedLogShippingSecondary
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     mssqlLogShippingTargetStateOptions = @{
                         # OPTIONAL
                         shouldDisconnectStandbyUsers = $someBoolean
                         # REQUIRED
                         state = $someMssqlLogShippingOkState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingOkState]) for enum values.
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ReseedLogShippingSecondary operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 63 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ResetAllOrgUsersPasswords
              
             $query = New-RscMutationMisc -ResetAllOrgUsersPasswords
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResetAllOrgUsersPasswords operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 64 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ResetUsersPasswordsWithUserIds
              
             $query = New-RscMutationMisc -ResetUsersPasswordsWithUserIds
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 userIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResetUsersPasswordsWithUserIds operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 65 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ResizeDisk
              
             $query = New-RscMutationMisc -ResizeDisk
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 diskId = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResizeDisk operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 66 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ResolveAnomaly
              
             $query = New-RscMutationMisc -ResolveAnomaly
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 anomalyType = $someAnomalyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnomalyType]) for enum values.
                 # REQUIRED
                 workloadId = $someString
                 # REQUIRED
                 anomalyId = $someString
                 # OPTIONAL
                 falsePositiveReport = @{
                     # REQUIRED
                     falsePositiveType = $someAnomalyFalsePositiveType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnomalyFalsePositiveType]) for enum values.
                     # OPTIONAL
                     otherReason = $someString
                 }
                 # OPTIONAL
                 directoriesToSnooze = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResolveAnomaly operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 67 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ResolveVolumeGroupsConflict
              
             $query = New-RscMutationMisc -ResolveVolumeGroupsConflict
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResolveVolumeGroupsConflict operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 68 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RetryBackup
              
             $query = New-RscMutationMisc -RetryBackup
              
             # REQUIRED
             $query.Var.backupObjects = @(
                 @{
                     # OPTIONAL
                     objectFid = $someString
                     # OPTIONAL
                     eventSeriesId = $someString
                     # OPTIONAL
                     monitoringId = $someString
             }
             )
             # OPTIONAL
             $query.Var.backupRunConfig = @{
                 # OPTIONAL
                 runNow = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RetryBackupResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the RetryBackup operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 69 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RetryDownloadPackageJob
              
             $query = New-RscMutationMisc -RetryDownloadPackageJob
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadPackageReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RetryDownloadPackageJob operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 70 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RevokeAllOrgRoles
              
             $query = New-RscMutationMisc -RevokeAllOrgRoles
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 userIds = @(
                     $someString
                 )
                 # OPTIONAL
                 groupIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the RevokeAllOrgRoles operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 71 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: RunCustomAnalyzer
              
             $query = New-RscMutationMisc -RunCustomAnalyzer
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 dictionaryCsv = $someString
                 # OPTIONAL
                 regex = $someString
                 # OPTIONAL
                 content = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RunCustomAnalyzerReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RunCustomAnalyzer operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 72 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ScheduleUpgradeBatchJob
              
             $query = New-RscMutationMisc -ScheduleUpgradeBatchJob
              
             # REQUIRED
             $query.Var.listClusterUuid = @(
                 $someString
             )
             # REQUIRED
             $query.Var.mode = $someString
             # REQUIRED
             $query.Var.action = $someActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActionType]) for enum values.
             # REQUIRED
             $query.Var.version = $someString
             # REQUIRED
             $query.Var.scheduleAt = $someDateTime
             # OPTIONAL
             $query.Var.context_tag = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;UpgradeJobReplyWithUuid&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ScheduleUpgradeBatchJob operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 73 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetAnalyzerRisks
              
             $query = New-RscMutationMisc -SetAnalyzerRisks
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 risks = @(
                     @{
                         # OPTIONAL
                         analyzerId = $someString
                         # OPTIONAL
                         risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SetAnalyzerRisksReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetAnalyzerRisks operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 74 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetBundleApprovalStatus
              
             $query = New-RscMutationMisc -SetBundleApprovalStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bundleVersion = $someString
                 # REQUIRED
                 approvalStatus = $someExoBundleApprovalStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExoBundleApprovalStatus]) for enum values.
                 # OPTIONAL
                 bundleMetadata = @{
                     # OPTIONAL
                     eksVersion = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetBundleApprovalStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 75 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetCustomerTags
              
             $query = New-RscMutationMisc -SetCustomerTags
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
                 # REQUIRED
                 customerTags = @{
                     # REQUIRED
                     tagList = @(
                         @{
                             # REQUIRED
                             key = $someString
                             # REQUIRED
                             value = $someString
                         }
                     )
                 }
                 # REQUIRED
                 shouldOverrideResourceTags = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetCustomerTags operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 76 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetDatastoreFreespaceThresholds
              
             $query = New-RscMutationMisc -SetDatastoreFreespaceThresholds
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 thresholds = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         datastoreFreespaceThreshold = @{
                             # OPTIONAL
                             vmId = $someString
                             # REQUIRED
                             threshold = $someSingle
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SetDatastoreFreespaceThresholdsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetDatastoreFreespaceThresholds operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 77 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetIpWhitelistEnabled
              
             $query = New-RscMutationMisc -SetIpWhitelistEnabled
              
             # REQUIRED
             $query.Var.enabled = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetIpWhitelistEnabled operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 78 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetMfaSetting
              
             $query = New-RscMutationMisc -SetMfaSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 isTotpEnforcedGlobal = $someBoolean
                 # OPTIONAL
                 totpReminderHours = $someInt
                 # OPTIONAL
                 mfaRememberHours = $someInt
                 # OPTIONAL
                 passkeyConfig = @{
                     # REQUIRED
                     passkeysAllowed = $someBoolean
                     # REQUIRED
                     platformPasskeyAllowed = $someBoolean
                     # REQUIRED
                     roamingPasskeyAllowed = $someBoolean
                     # REQUIRED
                     maxPasskeysAllowed = $someInt
                 }
                 # OPTIONAL
                 deletePasskeys = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetMfaSetting operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 79 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetPrivateContainerRegistry
              
             $query = New-RscMutationMisc -SetPrivateContainerRegistry
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 exocomputeAccountId = $someString
                 # REQUIRED
                 registryUrl = $someString
                 # OPTIONAL
                 pcrAwsImagePullDetails = @{
                     # OPTIONAL
                     awsNativeId = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetPrivateContainerRegistry operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 80 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetTotpConfig
              
             $query = New-RscMutationMisc -SetTotpConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 userId = $someString
                 # OPTIONAL
                 secret = $someString
                 # OPTIONAL
                 otp = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetTotpConfig operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 81 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetUpgradeType
              
             $query = New-RscMutationMisc -SetUpgradeType
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 upgradeType = $someUpgradeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UpgradeType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SetUpgradeTypeReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetUpgradeType operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 82 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetUserLevelTotpEnforcement
              
             $query = New-RscMutationMisc -SetUserLevelTotpEnforcement
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 userIds = @(
                     $someString
                 )
                 # OPTIONAL
                 isEnforced = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetUserLevelTotpEnforcement operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 83 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetWorkloadAlertSetting
              
             $query = New-RscMutationMisc -SetWorkloadAlertSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterId = $someString
                 # OPTIONAL
                 workloadFid = $someString
                 # OPTIONAL
                 enabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SetWorkloadAlertSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetWorkloadAlertSetting operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 84 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SetupDisk
              
             $query = New-RscMutationMisc -SetupDisk
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 diskId = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DiskInfo</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetupDisk operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 85 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StartCrawl
              
             $query = New-RscMutationMisc -StartCrawl
              
             # REQUIRED
             $query.Var.name = $someString
             # REQUIRED
             $query.Var.resources = @(
                 @{
                     # OPTIONAL
                     snappableFid = $someString
                     # OPTIONAL
                     snapshotFid = $someString
             }
             )
             # REQUIRED
             $query.Var.analyzerGroups = @(
                 @{
                     # OPTIONAL
                     groupType = $someAnalyzerGroupTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerGroupTypeEnum]) for enum values.
                     # OPTIONAL
                     id = $someString
                     # OPTIONAL
                     name = $someString
                     # OPTIONAL
                     analyzers = @(
                         @{
                             # OPTIONAL
                             analyzerType = $someAnalyzerTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerTypeEnum]) for enum values.
                             # OPTIONAL
                             id = $someString
                             # OPTIONAL
                             name = $someString
                             # OPTIONAL
                             dictionaryCsv = $someString
                             # OPTIONAL
                             dictionary = @(
                                 $someString
                             )
                             # OPTIONAL
                             regex = $someString
                             # OPTIONAL
                             analyzerRiskInstance = @{
                                 # OPTIONAL
                                 analyzerId = $someString
                                 # OPTIONAL
                                 riskVersion = $someInt
                                 # OPTIONAL
                                 risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
                             }
                             # OPTIONAL
                             tagId = $someInt
                             # OPTIONAL
                             risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
                         }
                     )
             }
             )
             # OPTIONAL
             $query.Var.extWhiteList = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StartCrawlReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartCrawl operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 86 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StartDownloadPackageBatchJob
              
             $query = New-RscMutationMisc -StartDownloadPackageBatchJob
              
             # REQUIRED
             $query.Var.listClusterUuid = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.downloadVersion = $someString
             # REQUIRED
             $query.Var.packageUrl = $someString
             # REQUIRED
             $query.Var.md5checksum = $someString
             # OPTIONAL
             $query.Var.size = $someInt64
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;DownloadPackageReplyWithUuid&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartDownloadPackageBatchJob operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 87 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StartExportRdsInstanceJob
              
             $query = New-RscMutationMisc -StartExportRdsInstanceJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 rdsInstanceId = $someString
                 # REQUIRED
                 isPointInTime = $someBoolean
                 # OPTIONAL
                 snapshotId = $someString
                 # OPTIONAL
                 exportTime = $someDateTime
                 # REQUIRED
                 dbInstanceName = $someString
                 # REQUIRED
                 destinationAwsNativeAccountId = $someString
                 # REQUIRED
                 destinationRegionNativeId = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
                 # REQUIRED
                 dbInstanceClass = $someAwsNativeRdsDbInstanceClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbInstanceClass]) for enum values.
                 # OPTIONAL
                 databaseInstanceClass = $someString
                 # OPTIONAL
                 primaryAz = $someString
                 # REQUIRED
                 port = $someInt64
                 # OPTIONAL
                 optionGroupName = $someString
                 # OPTIONAL
                 parameterGroupName = $someString
                 # OPTIONAL
                 subnetGroupName = $someString
                 # OPTIONAL
                 storageType = $someAwsNativeRdsStorageType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsStorageType]) for enum values.
                 # OPTIONAL
                 securityGroupIds = @(
                     $someString
                 )
                 # OPTIONAL
                 iops = $someInt
                 # REQUIRED
                 isPubliclyAccessible = $someBoolean
                 # REQUIRED
                 shouldExportTags = $someBoolean
                 # REQUIRED
                 isMultiAz = $someBoolean
                 # OPTIONAL
                 kmsKeyId = $someString
                 # OPTIONAL
                 subnetIds = @(
                     $someString
                 )
                 # OPTIONAL
                 snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values.
                 # OPTIONAL
                 dbClusterName = $someString
                 # OPTIONAL
                 dbClusterParameterGroupName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartExportRdsInstanceJob operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 88 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StartPeriodicUpgradePrechecksOnDemandJob
              
             $query = New-RscMutationMisc -StartPeriodicUpgradePrechecksOnDemandJob
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PrechecksJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartPeriodicUpgradePrechecksOnDemandJob operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 89 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StartUpgradeBatchJob
              
             $query = New-RscMutationMisc -StartUpgradeBatchJob
              
             # REQUIRED
             $query.Var.listClusterUuid = @(
                 $someString
             )
             # REQUIRED
             $query.Var.mode = $someString
             # REQUIRED
             $query.Var.action = $someActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActionType]) for enum values.
             # REQUIRED
             $query.Var.version = $someString
             # OPTIONAL
             $query.Var.context_tag = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;UpgradeJobReplyWithUuid&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartUpgradeBatchJob operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 90 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StartVolumeGroupMount
              
             $query = New-RscMutationMisc -StartVolumeGroupMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     smbDomainName = $someString
                     # OPTIONAL
                     smbValidIps = @(
                         $someString
                     )
                     # OPTIONAL
                     smbValidUsers = @(
                         $someString
                     )
                     # OPTIONAL
                     targetHostId = $someString
                     # REQUIRED
                     volumeConfigs = @(
                         @{
                             # OPTIONAL
                             mountPointOnHost = $someString
                             # REQUIRED
                             volumeId = $someString
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartVolumeGroupMount operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 91 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StopJobInstance
              
             $query = New-RscMutationMisc -StopJobInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 jobInstanceId = $someString
                 # OPTIONAL
                 eventSeriesId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StopJobInstanceReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StopJobInstance operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 92 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: StopJobInstanceFromEventSeries
              
             $query = New-RscMutationMisc -StopJobInstanceFromEventSeries
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 eventSeriesId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the StopJobInstanceFromEventSeries operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 93 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SupportPortalLogin
              
             $query = New-RscMutationMisc -SupportPortalLogin
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 account = $someString
                 # OPTIONAL
                 hostname = $someString
                 # OPTIONAL
                 organizationId = $someString
                 # REQUIRED
                 username = $someString
                 # REQUIRED
                 password = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SupportPortalLoginReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SupportPortalLogin operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 94 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: SwitchProductToOnboardingMode
              
             $query = New-RscMutationMisc -SwitchProductToOnboardingMode
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 workloadType = $someM365DashboardWorkloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.M365DashboardWorkloadType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the SwitchProductToOnboardingMode operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 95 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: TriggerCloudComputeConnectivityCheck
              
             $query = New-RscMutationMisc -TriggerCloudComputeConnectivityCheck
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 shouldCheckCloudConnectivityForCloudOut = $someBoolean
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 shouldCheckCloudConnectivityForCloudOn = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the TriggerCloudComputeConnectivityCheck operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 96 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: TriggerExocomputeHealthCheck
              
             $query = New-RscMutationMisc -TriggerExocomputeHealthCheck
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
                 # REQUIRED
                 exocomputeConfigId = $someString
                 # OPTIONAL
                 nodeType = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TriggerExocomputeHealthCheckReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the TriggerExocomputeHealthCheck operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 97 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UninstallIoFilter
              
             $query = New-RscMutationMisc -UninstallIoFilter
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UninstallIoFilter operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 98 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UnlockUsersByAdmin
              
             $query = New-RscMutationMisc -UnlockUsersByAdmin
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 userIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UnlockUsersByAdmin operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 99 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UnmountDisk
              
             $query = New-RscMutationMisc -UnmountDisk
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 liveMountId = $someInt64
                 # REQUIRED
                 mountIds = @(
                     $someInt64
                 )
                 # REQUIRED
                 targetWorkloadId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UnmountDisk operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 100 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateAccountOwner
              
             $query = New-RscMutationMisc -UpdateAccountOwner
              
             # REQUIRED
             $query.Var.userId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAccountOwner operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 101 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateAdGroup
              
             $query = New-RscMutationMisc -UpdateAdGroup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 groupId = $someString
                 # REQUIRED
                 updatedDisplayName = $someString
                 # REQUIRED
                 updatedGroupFilterAttributes = @(
                     @{
                         # OPTIONAL
                         filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values.
                         # OPTIONAL
                         attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values.
                         # OPTIONAL
                         attributeKey = $someString
                         # OPTIONAL
                         attributeValue = $someString
                         # OPTIONAL
                         dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAdGroup operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 102 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateAgentDeploymentSetting
              
             $query = New-RscMutationMisc -UpdateAgentDeploymentSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 settings = @{
                     # REQUIRED
                     isAutomatic = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AgentDeploymentSettings</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAgentDeploymentSetting operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 103 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateAgentDeploymentSettingInBatch
              
             $query = New-RscMutationMisc -UpdateAgentDeploymentSettingInBatch
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 requests = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         settings = @{
                             # REQUIRED
                             isAutomatic = $someBoolean
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateAgentDeploymentSettingInBatchReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAgentDeploymentSettingInBatch operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 104 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateAuthDomainUsersHiddenStatus
              
             $query = New-RscMutationMisc -UpdateAuthDomainUsersHiddenStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 userIds = @(
                     $someString
                 )
                 # REQUIRED
                 isHidden = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAuthDomainUsersHiddenStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 105 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateBackupThrottleSetting
              
             $query = New-RscMutationMisc -UpdateBackupThrottleSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 requests = @(
                     @{
                         # OPTIONAL
                         clusterUuid = $someString
                         # OPTIONAL
                         enableThrottling = $someBoolean
                         # OPTIONAL
                         vmwareThrottlingSettings = @{
                             # OPTIONAL
                             ioLatencyThreshold = $someInt
                             # OPTIONAL
                             datastoreIoLatencyThreshold = $someInt
                             # OPTIONAL
                             cpuUtilizationThreshold = $someInt
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateBackupThrottleSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateBackupThrottleSetting operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 106 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateBadDiskLedStatus
              
             $query = New-RscMutationMisc -UpdateBadDiskLedStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 diskSerial = $someString
                 # OPTIONAL
                 turnOff = $someBoolean
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 nodeId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateBadDiskLedStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateBadDiskLedStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 107 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateConfiguredGroup
              
             $query = New-RscMutationMisc -UpdateConfiguredGroup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 groupId = $someString
                 # OPTIONAL
                 updatedDisplayName = $someString
                 # OPTIONAL
                 updatedWildcard = $someString
                 # REQUIRED
                 updatedPdls = @(
                     $someString
                 )
                 # OPTIONAL
                 updatedGroupFilterAttributes = @(
                     @{
                         # OPTIONAL
                         filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values.
                         # OPTIONAL
                         attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values.
                         # OPTIONAL
                         attributeKey = $someString
                         # OPTIONAL
                         attributeValue = $someString
                         # OPTIONAL
                         dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values.
                     }
                 )
                 # REQUIRED
                 performArchival = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateConfiguredGroup operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 108 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateCustomAnalyzer
              
             $query = New-RscMutationMisc -UpdateCustomAnalyzer
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 analyzerType = $someAnalyzerTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerTypeEnum]) for enum values.
                 # OPTIONAL
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 dictionaryCsv = $someString
                 # OPTIONAL
                 dictionary = @(
                     $someString
                 )
                 # OPTIONAL
                 regex = $someString
                 # OPTIONAL
                 analyzerRiskInstance = @{
                     # OPTIONAL
                     analyzerId = $someString
                     # OPTIONAL
                     riskVersion = $someInt
                     # OPTIONAL
                     risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
                 }
                 # OPTIONAL
                 tagId = $someInt
                 # OPTIONAL
                 risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Analyzer</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCustomAnalyzer operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 109 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateCustomIntelFeed
              
             $query = New-RscMutationMisc -UpdateCustomIntelFeed
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 user = $someString
                 # OPTIONAL
                 name = @{
                     # OPTIONAL
                     name = $someString
                 }
                 # OPTIONAL
                 providerId = $someString
                 # OPTIONAL
                 description = @{
                     # OPTIONAL
                     description = $someString
                 }
                 # OPTIONAL
                 entriesToAdd = @(
                     @{
                         # OPTIONAL
                         iocString = $someString
                         # OPTIONAL
                         threatFamily = $someString
                         # REQUIRED
                         iocType = $someThreatFeedType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatFeedType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 entriesToRemove = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCustomIntelFeed operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 110 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateCustomerAppPermissions
              
             $query = New-RscMutationMisc -UpdateCustomerAppPermissions
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 appPermissions = @(
                     $someAzureAppPermission # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAppPermission]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateCustomerAppPermissionsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCustomerAppPermissions operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 111 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateDistributionListDigest
              
             $query = New-RscMutationMisc -UpdateDistributionListDigest
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 digestId = $someInt
                 # OPTIONAL
                 digestName = $someString
                 # OPTIONAL
                 frequencyHours = $someInt
                 # OPTIONAL
                 isImmediate = $someBoolean
                 # OPTIONAL
                 includeAudits = $someBoolean
                 # OPTIONAL
                 includeEvents = $someBoolean
                 # REQUIRED
                 eventDigestConfig = @{
                     # OPTIONAL
                     objectType = @(
                         $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     activityStatus = @(
                         $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     activityType = @(
                         $someString
                     )
                     # OPTIONAL
                     auditType = @(
                         $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     activitySeverity = @(
                         $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values.
                     )
                     # OPTIONAL
                     clusters = @(
                         $someString
                     )
                     # OPTIONAL
                     emailAddresses = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 recipientUserIds = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateDistributionListDigestReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateDistributionListDigest operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 112 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateDnsServersAndSearchDomains
              
             $query = New-RscMutationMisc -UpdateDnsServersAndSearchDomains
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 servers = @(
                     $someString
                 )
                 # REQUIRED
                 domains = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateDnsServersAndSearchDomains operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 113 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateEventDigest
              
             $query = New-RscMutationMisc -UpdateEventDigest
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 digestId = $someInt
                 # OPTIONAL
                 digestName = $someString
                 # OPTIONAL
                 frequencyHours = $someInt
                 # OPTIONAL
                 isImmediate = $someBoolean
                 # OPTIONAL
                 includeAudits = $someBoolean
                 # OPTIONAL
                 includeEvents = $someBoolean
                 # REQUIRED
                 eventDigestConfig = @{
                     # OPTIONAL
                     objectType = @(
                         $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     activityStatus = @(
                         $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     activityType = @(
                         $someString
                     )
                     # OPTIONAL
                     auditType = @(
                         $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     activitySeverity = @(
                         $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values.
                     )
                     # OPTIONAL
                     clusters = @(
                         $someString
                     )
                     # OPTIONAL
                     emailAddresses = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 recipientUserIds = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateEventDigestReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateEventDigest operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 114 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateFloatingIps
              
             $query = New-RscMutationMisc -UpdateFloatingIps
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 newClusterIps = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateFloatingIpsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateFloatingIps operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 115 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateGuestCredential
              
             $query = New-RscMutationMisc -UpdateGuestCredential
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 definition = @{
                     # OPTIONAL
                     domain = $someString
                     # OPTIONAL
                     description = $someString
                     # OPTIONAL
                     baseGuestCredential = @{
                         # REQUIRED
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateGuestCredentialReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateGuestCredential operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 116 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateInsightState
              
             $query = New-RscMutationMisc -UpdateInsightState
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 insightId = $someString
                 # OPTIONAL
                 isDismissed = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateInsightStateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateInsightState operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 117 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateIocStatus
              
             $query = New-RscMutationMisc -UpdateIocStatus
              
             # REQUIRED
             $query.Var.input = @(
                 @{
                     # REQUIRED
                     operation = $someIocOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IocOperation]) for enum values.
                     # OPTIONAL
                     iocHashOnly = @{
                         # REQUIRED
                         iocHashHex = $someString
                     }
                     # OPTIONAL
                     iocHashWithProvider = @{
                         # REQUIRED
                         iocHashHex = $someString
                         # REQUIRED
                         providerId = $someString
                     }
                     # OPTIONAL
                     iocProviderWithThreatFeedType = @{
                         # REQUIRED
                         providerId = $someString
                         # REQUIRED
                         type = $someThreatFeedType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatFeedType]) for enum values.
                     }
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateIocStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 118 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateIpWhitelist
              
             $query = New-RscMutationMisc -UpdateIpWhitelist
              
             # REQUIRED
             $query.Var.whitelistMode = $someWhitelistModeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WhitelistModeEnum]) for enum values.
             # REQUIRED
             $query.Var.ipCidrs = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateIpWhitelist operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 119 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateLambdaSettings
              
             $query = New-RscMutationMisc -UpdateLambdaSettings
              
             # OPTIONAL
             $query.Var.anomalyThreshold = $someSingle
             # OPTIONAL
             $query.Var.ransomwareThreshold = $someSingle
             # OPTIONAL
             $query.Var.isAnomalyAlertEnabled = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LambdaSettings</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateLambdaSettings operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 120 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateLockoutConfig
              
             $query = New-RscMutationMisc -UpdateLockoutConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 loginAttemptsLimit = $someInt
                 # OPTIONAL
                 selfServiceTokenValidityInMins = $someInt
                 # OPTIONAL
                 selfServiceAttemptsLimit = $someInt
                 # OPTIONAL
                 isSelfServiceEnabled = $someBoolean
                 # OPTIONAL
                 accountAutoUnlockDurationInMins = $someInt
                 # OPTIONAL
                 isBruteForceLockoutEnabled = $someBoolean
                 # OPTIONAL
                 isAutoUnlockFeatureEnabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateLockoutConfigReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateLockoutConfig operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 121 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateManagedIdentities
              
             $query = New-RscMutationMisc -UpdateManagedIdentities
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # OPTIONAL
                 managedIdentity = @{
                     # OPTIONAL
                     name = $someString
                     # OPTIONAL
                     clientId = $someString
                     # OPTIONAL
                     resourceGroup = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateManagedIdentitiesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateManagedIdentities operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 122 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateNetworkThrottle
              
             $query = New-RscMutationMisc -UpdateNetworkThrottle
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 throttleUpdate = @{
                     # OPTIONAL
                     defaultThrottleLimit = $someSingle
                     # OPTIONAL
                     isEnabled = $someBoolean
                     # OPTIONAL
                     networkInterface = $someString
                     # OPTIONAL
                     archivalThrottlePort = $someInt
                     # OPTIONAL
                     scheduledThrottles = @(
                         @{
                             # REQUIRED
                             daysOfWeek = @(
                                 $someInt
                             )
                             # REQUIRED
                             endTime = $someInt64
                             # REQUIRED
                             startTime = $someInt64
                             # REQUIRED
                             throttleLimit = $someSingle
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateNetworkThrottleReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateNetworkThrottle operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 123 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateProxyConfig
              
             $query = New-RscMutationMisc -UpdateProxyConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 proxy = @{
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     port = $someInt
                     # OPTIONAL
                     username = $someString
                     # REQUIRED
                     host = $someString
                     # REQUIRED
                     protocol = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateProxyConfigReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateProxyConfig operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 124 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateRoleAssignments
              
             $query = New-RscMutationMisc -UpdateRoleAssignments
              
             # OPTIONAL
             $query.Var.userIds = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.groupIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.roleIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateRoleAssignments operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 125 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateSupportUserAccess
              
             $query = New-RscMutationMisc -UpdateSupportUserAccess
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someInt
                 # OPTIONAL
                 impersonatedUserId = $someString
                 # OPTIONAL
                 newDurationInHours = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateSupportUserAccess operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 126 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateTunnelStatus
              
             $query = New-RscMutationMisc -UpdateTunnelStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     inactivityTimeoutInSeconds = $someInt64
                     # REQUIRED
                     isTunnelEnabled = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateTunnelStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTunnelStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 127 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateVlan
              
             $query = New-RscMutationMisc -UpdateVlan
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 vlanInfo = @{
                     # OPTIONAL
                     gateway = $someString
                     # OPTIONAL
                     alias = $someString
                     # REQUIRED
                     interfaces = @(
                         @{
                             # REQUIRED
                             ip = $someString
                             # REQUIRED
                             node = $someString
                         }
                     )
                     # REQUIRED
                     netmask = $someString
                     # REQUIRED
                     vlan = $someInt
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateVlan operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 128 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateVolumeGroup
              
             $query = New-RscMutationMisc -UpdateVolumeGroup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 patchProperties = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     isPaused = $someBoolean
                     # OPTIONAL
                     volumeIdsIncludedInSnapshots = @(
                         $someString
                     )
                     # OPTIONAL
                     forceFull = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateVolumeGroupReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateVolumeGroup operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 129 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpdateWhitelistedAnalyzers
              
             $query = New-RscMutationMisc -UpdateWhitelistedAnalyzers
              
             # REQUIRED
             $query.Var.stdPath = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.analyzerIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.runAsync = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateWhitelistedAnalyzers operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 130 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpgradeIoFilter
              
             $query = New-RscMutationMisc -UpgradeIoFilter
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 fqdnInfo = @{
                     # REQUIRED
                     fqdn = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeIoFilter operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 131 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: UpgradeToRsc
              
             $query = New-RscMutationMisc -UpgradeToRsc
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpgradeToRsc operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 132 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ValidateAndSaveCustomerKmsInfo
              
             $query = New-RscMutationMisc -ValidateAndSaveCustomerKmsInfo
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 kmsSpec = @{
                     # OPTIONAL
                     cloudType = $someO365AzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365AzureCloudType]) for enum values.
                     # OPTIONAL
                     tenantId = $someString
                     # OPTIONAL
                     kmsId = $someString
                     # OPTIONAL
                     appId = $someString
                     # OPTIONAL
                     appSecret = $someString
                     # OPTIONAL
                     keyName = $someString
                     # OPTIONAL
                     kekNameColossus = $someString
                 }
                 # REQUIRED
                 appSecret = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAndSaveCustomerKmsInfoReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateAndSaveCustomerKmsInfo operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 133 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: VmMakePrimary
              
             $query = New-RscMutationMisc -VmMakePrimary
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the VmMakePrimary operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 134 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: WarmSearchCache
              
             $query = New-RscMutationMisc -WarmSearchCache
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadFid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the WarmSearchCache operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationMongo</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationMongo</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Mongo' API domain: AddSource, DeleteSource, DiscoverSource, PatchSource, RecoverSource, or RetryAddSource.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationMongo creates a new mutation object for operations in the 'Mongo' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Mongo' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddSource, DeleteSource, DiscoverSource, PatchSource, RecoverSource, or RetryAddSource. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMongo -AddSource).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMongo -AddSource).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationMongo</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DiscoverSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PatchSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RetryAddSource</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: AddSource
              
             $query = New-RscMutationMongo -AddSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 mongoSourceAddRequestConfig = @{
                     # OPTIONAL
                     caCertfilePath = $someString
                     # OPTIONAL
                     ignoreSecondaries = @(
                         $someString
                     )
                     # OPTIONAL
                     sourceDriverPassword = $someString
                     # OPTIONAL
                     sourceDriverUser = $someString
                     # OPTIONAL
                     sslKeyfilePath = $someString
                     # OPTIONAL
                     sslCertfilePath = $someString
                     # REQUIRED
                     mongoType = $someMongoType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoType]) for enum values.
                     # OPTIONAL
                     sourceAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values.
                     # OPTIONAL
                     sslCertificateRequired = $someMongoSslCertificateRequirement # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoSslCertificateRequirement]) for enum values.
                     # REQUIRED
                     mongoClientHosts = @(
                         @{
                             # REQUIRED
                             configurationPort = $someInt
                             # REQUIRED
                             hostId = $someString
                         }
                     )
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddMongoSourceReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddSource operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: DeleteSource
              
             $query = New-RscMutationMongo -DeleteSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSource operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: DiscoverSource
              
             $query = New-RscMutationMongo -DiscoverSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DiscoverSource operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: PatchSource
              
             $query = New-RscMutationMongo -PatchSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 mongoSourcePatchRequestConfig = @{
                     # OPTIONAL
                     caCertfilePath = $someString
                     # OPTIONAL
                     ignoreSecondaries = @(
                         $someString
                     )
                     # OPTIONAL
                     sourceDriverPassword = $someString
                     # OPTIONAL
                     sourceDriverUser = $someString
                     # OPTIONAL
                     sslKeyfilePath = $someString
                     # OPTIONAL
                     sslCertfilePath = $someString
                     # OPTIONAL
                     sourceAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values.
                     # OPTIONAL
                     sslCertificateRequired = $someMongoSslCertificateRequirement # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoSslCertificateRequirement]) for enum values.
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the PatchSource operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: RecoverSource
              
             $query = New-RscMutationMongo -RecoverSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 input = @{
                     # OPTIONAL
                     prefix = $someString
                     # OPTIONAL
                     restoreDbPassword = $someString
                     # OPTIONAL
                     restoreDbUsername = $someString
                     # OPTIONAL
                     shouldDropExistingCollection = $someBoolean
                     # OPTIONAL
                     sourceCollectionIds = @(
                         $someString
                     )
                     # OPTIONAL
                     sourceDatabaseIds = @(
                         $someString
                     )
                     # OPTIONAL
                     targetCollectionName = $someString
                     # OPTIONAL
                     targetDatabaseName = $someString
                     # OPTIONAL
                     versionTime = $someDateTime
                     # OPTIONAL
                     restoreThrottleInBytesPerSecond = $someInt64
                     # OPTIONAL
                     isRestoreWithIndex = $someBoolean
                     # OPTIONAL
                     targetAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values.
                     # REQUIRED
                     sourceMongoClusterId = $someString
                     # REQUIRED
                     targetMongoClusterId = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverSource operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: RetryAddSource
              
             $query = New-RscMutationMongo -RetryAddSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 mongoSourceRequestConfig = @{
                     # OPTIONAL
                     caCertfilePath = $someString
                     # OPTIONAL
                     ignoreSecondaries = @(
                         $someString
                     )
                     # OPTIONAL
                     sourceDriverPassword = $someString
                     # OPTIONAL
                     sourceDriverUser = $someString
                     # OPTIONAL
                     sslKeyfilePath = $someString
                     # OPTIONAL
                     sslCertfilePath = $someString
                     # REQUIRED
                     mongoType = $someMongoType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoType]) for enum values.
                     # OPTIONAL
                     sourceAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values.
                     # OPTIONAL
                     sslCertificateRequired = $someMongoSslCertificateRequirement # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoSslCertificateRequirement]) for enum values.
                     # REQUIRED
                     mongoClientHosts = @(
                         @{
                             # REQUIRED
                             configurationPort = $someInt
                             # REQUIRED
                             hostId = $someString
                         }
                     )
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RetryAddSource operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationMongoDb</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationMongoDb</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Mongo DB' API domain: AssignSlaToCollection, BulkDeleteSources, CreateSource, DeleteSource, RecoverSource, or UpdateSource.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationMongoDb creates a new mutation object for operations in the 'Mongo DB' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Mongo DB' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AssignSlaToCollection, BulkDeleteSources, CreateSource, DeleteSource, RecoverSource, or UpdateSource. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMongoDb -AssignSlaToCollection).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMongoDb -AssignSlaToCollection).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationMongoDb</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AssignSlaToCollection</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkDeleteSources</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverSource</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateSource</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: AssignSlaToCollection
              
             $query = New-RscMutationMongoDb -AssignSlaToCollection
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 input = @{
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                     # REQUIRED
                     slaId = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignSlaToCollection operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: BulkDeleteSources
              
             $query = New-RscMutationMongoDb -BulkDeleteSources
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 sourceType = $someV2BulkDeleteMosaicSourcesRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2BulkDeleteMosaicSourcesRequestSourceType]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceData = @{
                     # OPTIONAL
                     async = $someBoolean
                     # REQUIRED
                     sourceNames = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDeleteSources operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: CreateSource
              
             $query = New-RscMutationMongoDb -CreateSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceData = @{
                     # OPTIONAL
                     async = $someBoolean
                     # OPTIONAL
                     cassandraYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     dseYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     enableSsl = $someBoolean
                     # OPTIONAL
                     httpsCertificate = $someString
                     # OPTIONAL
                     ignoreSecondaries = @(
                         $someString
                     )
                     # OPTIONAL
                     jmxPassword = $someString
                     # OPTIONAL
                     jmxUser = $someString
                     # OPTIONAL
                     parameterEncoded = $someBoolean
                     # OPTIONAL
                     sourceAuthKey = $someString
                     # OPTIONAL
                     sourceAuthKeyfile = $someString
                     # OPTIONAL
                     sourceAuthPassphrase = $someString
                     # OPTIONAL
                     sourceDriverPassword = $someString
                     # OPTIONAL
                     sourceDriverUser = $someString
                     # OPTIONAL
                     sourceHttpsPort = $someString
                     # OPTIONAL
                     sourcePassword = $someString
                     # OPTIONAL
                     sourcePort = $someString
                     # OPTIONAL
                     sourceRpcPort = $someString
                     # OPTIONAL
                     sourceSshPort = $someString
                     # OPTIONAL
                     sourceUser = $someString
                     # OPTIONAL
                     sslCaCerts = $someString
                     # OPTIONAL
                     sslCertfile = $someString
                     # OPTIONAL
                     sslKeyfile = $someString
                     # REQUIRED
                     sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values.
                     # OPTIONAL
                     sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values.
                     # REQUIRED
                     sourceIp = @(
                         $someString
                     )
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateSource operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: DeleteSource
              
             $query = New-RscMutationMongoDb -DeleteSource
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 sourceType = $someV2DeleteMosaicSourceRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2DeleteMosaicSourceRequestSourceType]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSource operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: RecoverSource
              
             $query = New-RscMutationMongoDb -RecoverSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 recoveryData = @{
                     # OPTIONAL
                     destinationSourceName = $someString
                     # OPTIONAL
                     keyspaceConfig = $someString
                     # OPTIONAL
                     maxDiskUsage = $someString
                     # OPTIONAL
                     restoreDbUserPwd = $someString
                     # OPTIONAL
                     restoreDbUsername = $someString
                     # OPTIONAL
                     startTimestamp = $someInt
                     # OPTIONAL
                     targetEncryptionKey = $someString
                     # OPTIONAL
                     targetQuery = $someString
                     # OPTIONAL
                     sourceType = $someMosaicRetrieveRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicRetrieveRequestSourceType]) for enum values.
                     # OPTIONAL
                     destinationManagementObjects = @{
                         # OPTIONAL
                         databases = @(
                             @{
                                 # OPTIONAL
                                 dbName = $someString
                                 # OPTIONAL
                                 tables = @(
                                     $someString
                                 )
                             }
                         )
                     }
                     # REQUIRED
                     destinationPath = $someString
                     # REQUIRED
                     managementObjects = @{
                         # OPTIONAL
                         databases = @(
                             @{
                                 # OPTIONAL
                                 dbName = $someString
                                 # OPTIONAL
                                 tables = @(
                                     $someString
                                 )
                             }
                         )
                     }
                     # REQUIRED
                     parameterEncoded = $someBoolean
                     # REQUIRED
                     sourceName = $someString
                     # REQUIRED
                     versionTime = $someInt
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverSource operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: UpdateSource
              
             $query = New-RscMutationMongoDb -UpdateSource
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sourceData = @{
                     # OPTIONAL
                     async = $someBoolean
                     # OPTIONAL
                     cassandraYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     dseYaml = @(
                         $someString
                     )
                     # OPTIONAL
                     enableSsl = $someBoolean
                     # OPTIONAL
                     httpsCertificate = $someString
                     # OPTIONAL
                     ignoreSecondaries = @(
                         $someString
                     )
                     # OPTIONAL
                     jmxPassword = $someString
                     # OPTIONAL
                     jmxUser = $someString
                     # OPTIONAL
                     parameterEncoded = $someBoolean
                     # OPTIONAL
                     sourceAuthKey = $someString
                     # OPTIONAL
                     sourceAuthKeyfile = $someString
                     # OPTIONAL
                     sourceAuthPassphrase = $someString
                     # OPTIONAL
                     sourceDriverPassword = $someString
                     # OPTIONAL
                     sourceDriverUser = $someString
                     # OPTIONAL
                     sourceHttpsPort = $someString
                     # OPTIONAL
                     sourcePassword = $someString
                     # OPTIONAL
                     sourcePort = $someString
                     # OPTIONAL
                     sourceRpcPort = $someString
                     # OPTIONAL
                     sourceSshPort = $someString
                     # OPTIONAL
                     sourceUser = $someString
                     # OPTIONAL
                     sslCaCerts = $someString
                     # OPTIONAL
                     sslCertfile = $someString
                     # OPTIONAL
                     sslKeyfile = $someString
                     # REQUIRED
                     sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values.
                     # OPTIONAL
                     sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values.
                     # REQUIRED
                     sourceIp = @(
                         $someString
                     )
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateSource operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationMosaic</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationMosaic</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 3 operations in the 'Mosaic' API domain: AddStore, DeleteStore, or UpdateStore.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationMosaic creates a new mutation object for operations in the 'Mosaic' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'Mosaic' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddStore, DeleteStore, or UpdateStore. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMosaic -AddStore).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMosaic -AddStore).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationMosaic</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddStore</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteStore</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateStore</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mosaic
             # API Operation: AddStore
              
             $query = New-RscMutationMosaic -AddStore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 addStoreData = @{
                     # OPTIONAL
                     accessKeyId = $someString
                     # OPTIONAL
                     nfsServer = $someString
                     # OPTIONAL
                     nfsServerMountPath = $someString
                     # OPTIONAL
                     secretKey = $someString
                     # OPTIONAL
                     skipKeyFileConfig = $someBoolean
                     # REQUIRED
                     storeType = $someMosaicAddStoreRequestStoreType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicAddStoreRequestStoreType]) for enum values.
                     # REQUIRED
                     storeName = $someString
                     # REQUIRED
                     storeUrl = $someString
                 }
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddStore operation of the 'Mosaic' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mosaic
             # API Operation: DeleteStore
              
             $query = New-RscMutationMosaic -DeleteStore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 storeName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteStore operation of the 'Mosaic' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mosaic
             # API Operation: UpdateStore
              
             $query = New-RscMutationMosaic -UpdateStore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 modifyStoreData = @{
                     # OPTIONAL
                     accessKeyId = $someString
                     # OPTIONAL
                     secretKey = $someString
                     # OPTIONAL
                     skipKeyFileConfig = $someBoolean
                     # REQUIRED
                     storeName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicAsyncResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateStore operation of the 'Mosaic' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationMssql</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationMssql</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 24 operations in the 'Microsoft SQL Server' API domain: AddHost, AssignSlaDomainProperties, AssignSlaDomainPropertiesAsync, BrowseDatabaseSnapshot, BulkCreateOnDemandBackup, BulkUpdateAvailabilityGroup, BulkUpdateDbs, BulkUpdateInstance, BulkUpdatePropertiesOnHost, BulkUpdatePropertiesOnWindowsCluster, CreateLiveMount, CreateLogShippingConfiguration, CreateOnDemandBackup, DeleteDbSnapshots, DeleteLiveMount, DeleteLogShipping, DownloadDatabaseBackupFiles, DownloadDatabaseFilesFromArchivalLocation, ExportDatabase, RestoreDatabase, TakeLogBackup, UpdateDefaultProperties, UpdateLogShippingConfiguration, or UpdateLogShippingConfigurationV1.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationMssql creates a new mutation object for operations in the 'Microsoft SQL Server' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 24 operations in the 'Microsoft SQL Server' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddHost, AssignSlaDomainProperties, AssignSlaDomainPropertiesAsync, BrowseDatabaseSnapshot, BulkCreateOnDemandBackup, BulkUpdateAvailabilityGroup, BulkUpdateDbs, BulkUpdateInstance, BulkUpdatePropertiesOnHost, BulkUpdatePropertiesOnWindowsCluster, CreateLiveMount, CreateLogShippingConfiguration, CreateOnDemandBackup, DeleteDbSnapshots, DeleteLiveMount, DeleteLogShipping, DownloadDatabaseBackupFiles, DownloadDatabaseFilesFromArchivalLocation, ExportDatabase, RestoreDatabase, TakeLogBackup, UpdateDefaultProperties, UpdateLogShippingConfiguration, or UpdateLogShippingConfigurationV1. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMssql -AddHost).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMssql -AddHost).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationMssql</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddHost</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AssignSlaDomainProperties</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AssignSlaDomainPropertiesAsync</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BrowseDatabaseSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkCreateOnDemandBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateAvailabilityGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateDbs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdatePropertiesOnHost</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdatePropertiesOnWindowsCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateLiveMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateLogShippingConfiguration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOnDemandBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteDbSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteLiveMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteLogShipping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadDatabaseBackupFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadDatabaseFilesFromArchivalLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TakeLogBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateDefaultProperties</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateLogShippingConfiguration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateLogShippingConfigurationV1</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: AddHost
              
             $query = New-RscMutationMssql -AddHost
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 hosts = @(
                     @{
                         # OPTIONAL
                         hasAgent = $someBoolean
                         # OPTIONAL
                         oracleQueryUser = $someString
                         # OPTIONAL
                         oracleSysDbaUser = $someString
                         # OPTIONAL
                         organizationId = $someString
                         # OPTIONAL
                         alias = $someString
                         # OPTIONAL
                         isOracleHost = $someBoolean
                         # OPTIONAL
                         mssqlSddCertificateId = $someString
                         # OPTIONAL
                         orgNetworkId = $someString
                         # OPTIONAL
                         osType = $someHostRegisterOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRegisterOsType]) for enum values.
                         # OPTIONAL
                         hdfsConfig = @{
                             # OPTIONAL
                             hdfsBaseConfig = @{
                                 # OPTIONAL
                                 apiToken = $someString
                                 # OPTIONAL
                                 kerberosTicket = $someString
                                 # OPTIONAL
                                 nameservices = $someString
                                 # OPTIONAL
                                 username = $someString
                                 # REQUIRED
                                 hosts = @(
                                     @{
                                         # REQUIRED
                                         hostname = $someString
                                         # REQUIRED
                                         port = $someInt
                                     }
                                 )
                             }
                         }
                         # REQUIRED
                         hostname = $someString
                         # OPTIONAL
                         mssqlSddUserCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                         # OPTIONAL
                         nasConfig = @{
                             # OPTIONAL
                             apiCertificate = $someString
                             # OPTIONAL
                             apiEndpoint = $someString
                             # OPTIONAL
                             apiHostname = $someString
                             # OPTIONAL
                             apiPassword = $someString
                             # OPTIONAL
                             apiToken = $someString
                             # OPTIONAL
                             apiUsername = $someString
                             # OPTIONAL
                             zoneName = $someString
                             # OPTIONAL
                             isSnapdiffEnabled = $someBoolean
                             # OPTIONAL
                             isIsilonChangelistEnabled = $someBoolean
                             # OPTIONAL
                             isNetAppSnapDiffEnabled = $someBoolean
                             # OPTIONAL
                             isShareAutoDiscoveryEnabled = $someBoolean
                             # OPTIONAL
                             isNutanixCftEnabled = $someBoolean
                             # REQUIRED
                             vendorType = $someString
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkRegisterHostAsyncReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddHost operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: AssignSlaDomainProperties
              
             $query = New-RscMutationMssql -AssignSlaDomainProperties
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 updateInfo = @{
                     # OPTIONAL
                     shouldApplyToExistingSnapshots = $someBoolean
                     # OPTIONAL
                     shouldApplyToNonPolicySnapshots = $someBoolean
                     # OPTIONAL
                     existingSnapshotRetention = $someExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExistingSnapshotRetention]) for enum values.
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                     # OPTIONAL
                     mssqlSlaPatchProperties = @{
                         # OPTIONAL
                         configuredSlaDomainId = $someString
                         # OPTIONAL
                         useConfiguredDefaultLogRetention = $someBoolean
                         # OPTIONAL
                         mssqlSlaRelatedProperties = @{
                             # OPTIONAL
                             copyOnly = $someBoolean
                             # OPTIONAL
                             logBackupFrequencyInSeconds = $someInt
                             # OPTIONAL
                             logRetentionHours = $someInt
                             # OPTIONAL
                             hasLogConfigFromSla = $someBoolean
                             # OPTIONAL
                             hostLogRetention = $someInt
                         }
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignSlaDomainProperties operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: AssignSlaDomainPropertiesAsync
              
             $query = New-RscMutationMssql -AssignSlaDomainPropertiesAsync
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 updateInfo = @{
                     # OPTIONAL
                     shouldApplyToExistingSnapshots = $someBoolean
                     # OPTIONAL
                     shouldApplyToNonPolicySnapshots = $someBoolean
                     # OPTIONAL
                     existingSnapshotRetention = $someExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExistingSnapshotRetention]) for enum values.
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                     # OPTIONAL
                     mssqlSlaPatchProperties = @{
                         # OPTIONAL
                         configuredSlaDomainId = $someString
                         # OPTIONAL
                         useConfiguredDefaultLogRetention = $someBoolean
                         # OPTIONAL
                         mssqlSlaRelatedProperties = @{
                             # OPTIONAL
                             copyOnly = $someBoolean
                             # OPTIONAL
                             logBackupFrequencyInSeconds = $someInt
                             # OPTIONAL
                             logRetentionHours = $someInt
                             # OPTIONAL
                             hasLogConfigFromSla = $someBoolean
                             # OPTIONAL
                             hostLogRetention = $someInt
                         }
                     }
                 }
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AssignMssqlSlaDomainPropertiesAsyncReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignSlaDomainPropertiesAsync operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: BrowseDatabaseSnapshot
              
             $query = New-RscMutationMssql -BrowseDatabaseSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     backupType = $someMssqlBackupType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlBackupType]) for enum values.
                     # OPTIONAL
                     endPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                     # OPTIONAL
                     recoveryPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                     # OPTIONAL
                     startPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BrowseMssqlDatabaseSnapshotReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseDatabaseSnapshot operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: BulkCreateOnDemandBackup
              
             $query = New-RscMutationMssql -BulkCreateOnDemandBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     availabilityGroupIds = @(
                         $someString
                     )
                     # OPTIONAL
                     databaseIds = @(
                         $someString
                     )
                     # OPTIONAL
                     forceFullSnapshot = $someBoolean
                     # OPTIONAL
                     hostIds = @(
                         $someString
                     )
                     # OPTIONAL
                     instanceIds = @(
                         $someString
                     )
                     # OPTIONAL
                     windowsClusterIds = @(
                         $someString
                     )
                     # OPTIONAL
                     baseOnDemandSnapshotConfig = @{
                         # OPTIONAL
                         slaId = $someString
                     }
                 }
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkCreateOnDemandBackup operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: BulkUpdateAvailabilityGroup
              
             $query = New-RscMutationMssql -BulkUpdateAvailabilityGroup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 availabilityGroupsUpdateProperties = @(
                     @{
                         # REQUIRED
                         availabilityGroupId = $someString
                         # REQUIRED
                         updateProperties = @{
                             # OPTIONAL
                             configuredSlaDomainId = $someString
                             # OPTIONAL
                             mssqlNonSlaProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                             }
                             # OPTIONAL
                             mssqlSlaPatchProperties = @{
                                 # OPTIONAL
                                 configuredSlaDomainId = $someString
                                 # OPTIONAL
                                 useConfiguredDefaultLogRetention = $someBoolean
                                 # OPTIONAL
                                 mssqlSlaRelatedProperties = @{
                                     # OPTIONAL
                                     copyOnly = $someBoolean
                                     # OPTIONAL
                                     logBackupFrequencyInSeconds = $someInt
                                     # OPTIONAL
                                     logRetentionHours = $someInt
                                     # OPTIONAL
                                     hasLogConfigFromSla = $someBoolean
                                     # OPTIONAL
                                     hostLogRetention = $someInt
                                 }
                             }
                             # OPTIONAL
                             mssqlSlaRelatedProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                                 # OPTIONAL
                                 hasLogConfigFromSla = $someBoolean
                                 # OPTIONAL
                                 hostLogRetention = $someInt
                             }
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateMssqlAvailabilityGroupReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateAvailabilityGroup operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: BulkUpdateDbs
              
             $query = New-RscMutationMssql -BulkUpdateDbs
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 dbsUpdateProperties = @(
                     @{
                         # REQUIRED
                         databaseId = $someString
                         # REQUIRED
                         updateProperties = @{
                             # OPTIONAL
                             configuredSlaDomainId = $someString
                             # OPTIONAL
                             maxDataStreams = $someInt
                             # OPTIONAL
                             isPaused = $someBoolean
                             # OPTIONAL
                             shouldForceFull = $someBoolean
                             # OPTIONAL
                             shouldClearPostBackupScript = $someBoolean
                             # OPTIONAL
                             shouldClearPreBackupScript = $someBoolean
                             # OPTIONAL
                             mssqlNonSlaProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                             }
                             # OPTIONAL
                             mssqlSlaPatchProperties = @{
                                 # OPTIONAL
                                 configuredSlaDomainId = $someString
                                 # OPTIONAL
                                 useConfiguredDefaultLogRetention = $someBoolean
                                 # OPTIONAL
                                 mssqlSlaRelatedProperties = @{
                                     # OPTIONAL
                                     copyOnly = $someBoolean
                                     # OPTIONAL
                                     logBackupFrequencyInSeconds = $someInt
                                     # OPTIONAL
                                     logRetentionHours = $someInt
                                     # OPTIONAL
                                     hasLogConfigFromSla = $someBoolean
                                     # OPTIONAL
                                     hostLogRetention = $someInt
                                 }
                             }
                             # OPTIONAL
                             mssqlSlaRelatedProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                                 # OPTIONAL
                                 hasLogConfigFromSla = $someBoolean
                                 # OPTIONAL
                                 hostLogRetention = $someInt
                             }
                             # OPTIONAL
                             postBackupScript = @{
                                 # REQUIRED
                                 scriptErrorAction = $someScriptErrorAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ScriptErrorAction]) for enum values.
                                 # REQUIRED
                                 scriptPath = $someString
                                 # REQUIRED
                                 timeoutMs = $someInt64
                             }
                             # OPTIONAL
                             preBackupScript = @{
                                 # REQUIRED
                                 scriptErrorAction = $someScriptErrorAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ScriptErrorAction]) for enum values.
                                 # REQUIRED
                                 scriptPath = $someString
                                 # REQUIRED
                                 timeoutMs = $someInt64
                             }
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateMssqlDbsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateDbs operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: BulkUpdateInstance
              
             $query = New-RscMutationMssql -BulkUpdateInstance
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 instancesUpdateProperties = @(
                     @{
                         # REQUIRED
                         instanceId = $someString
                         # REQUIRED
                         updateProperties = @{
                             # OPTIONAL
                             configuredSlaDomainId = $someString
                             # OPTIONAL
                             mssqlNonSlaProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                             }
                             # OPTIONAL
                             mssqlSlaPatchProperties = @{
                                 # OPTIONAL
                                 configuredSlaDomainId = $someString
                                 # OPTIONAL
                                 useConfiguredDefaultLogRetention = $someBoolean
                                 # OPTIONAL
                                 mssqlSlaRelatedProperties = @{
                                     # OPTIONAL
                                     copyOnly = $someBoolean
                                     # OPTIONAL
                                     logBackupFrequencyInSeconds = $someInt
                                     # OPTIONAL
                                     logRetentionHours = $someInt
                                     # OPTIONAL
                                     hasLogConfigFromSla = $someBoolean
                                     # OPTIONAL
                                     hostLogRetention = $someInt
                                 }
                             }
                             # OPTIONAL
                             mssqlSlaRelatedProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                                 # OPTIONAL
                                 hasLogConfigFromSla = $someBoolean
                                 # OPTIONAL
                                 hostLogRetention = $someInt
                             }
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateMssqlInstanceReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateInstance operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: BulkUpdatePropertiesOnHost
              
             $query = New-RscMutationMssql -BulkUpdatePropertiesOnHost
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 hostsUpdateProperties = @(
                     @{
                         # REQUIRED
                         hostId = $someString
                         # REQUIRED
                         updateProperties = @{
                             # OPTIONAL
                             mssqlSlaRelatedProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                                 # OPTIONAL
                                 hasLogConfigFromSla = $someBoolean
                                 # OPTIONAL
                                 hostLogRetention = $someInt
                             }
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateMssqlPropertiesOnHostReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdatePropertiesOnHost operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: BulkUpdatePropertiesOnWindowsCluster
              
             $query = New-RscMutationMssql -BulkUpdatePropertiesOnWindowsCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 windowsClustersUpdateProperties = @(
                     @{
                         # REQUIRED
                         updateProperties = @{
                             # OPTIONAL
                             mssqlSlaRelatedProperties = @{
                                 # OPTIONAL
                                 copyOnly = $someBoolean
                                 # OPTIONAL
                                 logBackupFrequencyInSeconds = $someInt
                                 # OPTIONAL
                                 logRetentionHours = $someInt
                                 # OPTIONAL
                                 hasLogConfigFromSla = $someBoolean
                                 # OPTIONAL
                                 hostLogRetention = $someInt
                             }
                         }
                         # REQUIRED
                         windowsClusterId = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateMssqlPropertiesOnWindowsClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdatePropertiesOnWindowsCluster operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: CreateLiveMount
              
             $query = New-RscMutationMssql -CreateLiveMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     targetInstanceId = $someString
                     # OPTIONAL
                     recoveryModel = $someMssqlDatabaseRecoveryModel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlDatabaseRecoveryModel]) for enum values.
                     # REQUIRED
                     mountedDatabaseName = $someString
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateLiveMount operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: CreateLogShippingConfiguration
              
             $query = New-RscMutationMssql -CreateLogShippingConfiguration
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     makeupReseedLimit = $someInt
                     # OPTIONAL
                     mssqlLogShippingCreateConfig = @{
                         # OPTIONAL
                         maxDataStreams = $someInt
                         # OPTIONAL
                         targetDataFilePath = $someString
                         # OPTIONAL
                         targetLogFilePath = $someString
                         # OPTIONAL
                         mssqlLogShippingTargetStateOptions = @{
                             # OPTIONAL
                             shouldDisconnectStandbyUsers = $someBoolean
                             # REQUIRED
                             state = $someMssqlLogShippingOkState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingOkState]) for enum values.
                         }
                         # REQUIRED
                         targetDatabaseName = $someString
                         # OPTIONAL
                         targetFilePaths = @(
                             @{
                                 # OPTIONAL
                                 newFilename = $someString
                                 # OPTIONAL
                                 newLogicalName = $someString
                                 # REQUIRED
                                 exportPath = $someString
                                 # REQUIRED
                                 logicalName = $someString
                             }
                         )
                         # REQUIRED
                         targetInstanceId = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateLogShippingConfiguration operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: CreateOnDemandBackup
              
             $query = New-RscMutationMssql -CreateOnDemandBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     forceFullSnapshot = $someBoolean
                     # OPTIONAL
                     baseOnDemandSnapshotConfig = @{
                         # OPTIONAL
                         slaId = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOnDemandBackup operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DeleteDbSnapshots
              
             $query = New-RscMutationMssql -DeleteDbSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteDbSnapshots operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DeleteLiveMount
              
             $query = New-RscMutationMssql -DeleteLiveMount
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 force = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteLiveMount operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DeleteLogShipping
              
             $query = New-RscMutationMssql -DeleteLogShipping
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 deleteSecondaryDatabase = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteLogShipping operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DownloadDatabaseBackupFiles
              
             $query = New-RscMutationMssql -DownloadDatabaseBackupFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     items = @(
                         $someString
                     )
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadDatabaseBackupFiles operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DownloadDatabaseFilesFromArchivalLocation
              
             $query = New-RscMutationMssql -DownloadDatabaseFilesFromArchivalLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadDatabaseFilesFromArchivalLocation operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: ExportDatabase
              
             $query = New-RscMutationMssql -ExportDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     allowOverwrite = $someBoolean
                     # OPTIONAL
                     finishRecovery = $someBoolean
                     # OPTIONAL
                     maxDataStreams = $someInt
                     # OPTIONAL
                     targetDataFilePath = $someString
                     # OPTIONAL
                     targetLogFilePath = $someString
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                     # REQUIRED
                     targetDatabaseName = $someString
                     # OPTIONAL
                     targetFilePaths = @(
                         @{
                             # OPTIONAL
                             newFilename = $someString
                             # OPTIONAL
                             newLogicalName = $someString
                             # REQUIRED
                             exportPath = $someString
                             # REQUIRED
                             logicalName = $someString
                         }
                     )
                     # REQUIRED
                     targetInstanceId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportDatabase operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: RestoreDatabase
              
             $query = New-RscMutationMssql -RestoreDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     finishRecovery = $someBoolean
                     # OPTIONAL
                     maxDataStreams = $someInt
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         timestampMs = $someInt64
                         # OPTIONAL
                         date = $someDateTime
                         # OPTIONAL
                         lsnPoint = @{
                             # OPTIONAL
                             recoveryForkGuid = $someString
                             # REQUIRED
                             lsn = $someString
                         }
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreDatabase operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: TakeLogBackup
              
             $query = New-RscMutationMssql -TakeLogBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the TakeLogBackup operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: UpdateDefaultProperties
              
             $query = New-RscMutationMssql -UpdateDefaultProperties
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 defaultProperties = @{
                     # OPTIONAL
                     cbtStatus = $someBoolean
                     # OPTIONAL
                     logBackupFrequencyInSeconds = $someInt64
                     # OPTIONAL
                     logRetentionTimeInHours = $someInt
                     # OPTIONAL
                     shouldUseDefaultBackupLocation = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateMssqlDefaultPropertiesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateDefaultProperties operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: UpdateLogShippingConfiguration
              
             $query = New-RscMutationMssql -UpdateLogShippingConfiguration
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     makeupReseedLimit = $someInt
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateMssqlLogShippingConfigurationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateLogShippingConfiguration operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: UpdateLogShippingConfigurationV1
              
             $query = New-RscMutationMssql -UpdateLogShippingConfigurationV1
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     mssqlLogShippingTargetStateOptions = @{
                         # OPTIONAL
                         shouldDisconnectStandbyUsers = $someBoolean
                         # REQUIRED
                         state = $someMssqlLogShippingOkState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingOkState]) for enum values.
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateLogShippingConfigurationV1 operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationNas</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationNas</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 10 operations in the 'NAS' API domain: BulkAddNasShares, BulkDeleteNasShares, BulkDeleteNasSystems, BulkUpdateNasShares, DeleteNasSystem, HideRevealNasShares, RefreshNasSystems, RegisterNasSystem, UpdateNasShares, or UpdateNasSystem.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationNas creates a new mutation object for operations in the 'NAS' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 10 operations in the 'NAS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkAddNasShares, BulkDeleteNasShares, BulkDeleteNasSystems, BulkUpdateNasShares, DeleteNasSystem, HideRevealNasShares, RefreshNasSystems, RegisterNasSystem, UpdateNasShares, or UpdateNasSystem. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNas -BulkAddNasShares).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNas -BulkAddNasShares).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationNas</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkAddNasShares</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkDeleteNasShares</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkDeleteNasSystems</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateNasShares</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteNasSystem</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HideRevealNasShares</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshNasSystems</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterNasSystem</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateNasShares</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateNasSystem</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: BulkAddNasShares
              
             $query = New-RscMutationNas -BulkAddNasShares
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkAddNasShareInput = @{
                     # REQUIRED
                     nasShares = @(
                         @{
                             # REQUIRED
                             shareType = $someCreateNasShareInputShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CreateNasShareInputShareType]) for enum values.
                             # OPTIONAL
                             credentials = @{
                                 # OPTIONAL
                                 password = $someString
                                 # REQUIRED
                                 username = $someString
                             }
                             # REQUIRED
                             exportPoint = $someString
                         }
                     )
                     # REQUIRED
                     nasSourceId = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkAddNasSharesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkAddNasShares operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: BulkDeleteNasShares
              
             $query = New-RscMutationNas -BulkDeleteNasShares
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkDeleteNasShareRequest = @{
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDeleteNasShares operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: BulkDeleteNasSystems
              
             $query = New-RscMutationNas -BulkDeleteNasSystems
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkDeleteNasSystemRequest = @{
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkDeleteNasSystems operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: BulkUpdateNasShares
              
             $query = New-RscMutationNas -BulkUpdateNasShares
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkUpdateNasShareInput = @{
                     # REQUIRED
                     nasShares = @(
                         @{
                             # OPTIONAL
                             isIsilonChangelistEnabled = $someBoolean
                             # OPTIONAL
                             exportPoint = $someString
                             # OPTIONAL
                             nasSourceId = $someString
                             # OPTIONAL
                             credentials = @{
                                 # OPTIONAL
                                 password = $someString
                                 # REQUIRED
                                 username = $someString
                             }
                             # REQUIRED
                             id = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateNasSharesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateNasShares operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: DeleteNasSystem
              
             $query = New-RscMutationNas -DeleteNasSystem
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteNasSystem operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: HideRevealNasShares
              
             $query = New-RscMutationNas -HideRevealNasShares
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 hideNasSharesRequest = @{
                     # REQUIRED
                     action = $someHideRevealAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HideRevealAction]) for enum values.
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the HideRevealNasShares operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: RefreshNasSystems
              
             $query = New-RscMutationNas -RefreshNasSystems
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 discoverNasSystemRequest = @{
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RefreshNasSystemsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshNasSystems operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: RegisterNasSystem
              
             $query = New-RscMutationNas -RegisterNasSystem
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 nasSystem = @{
                     # OPTIONAL
                     isIsilonChangelistEnabled = $someBoolean
                     # OPTIONAL
                     shouldGrantSmbShareRootAccess = $someBoolean
                     # OPTIONAL
                     shouldGrantNfsShareRootAccess = $someBoolean
                     # REQUIRED
                     nasVendorType = $someNasVendorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NasVendorType]) for enum values.
                     # OPTIONAL
                     genericNasSystemParameters = @{
                         # REQUIRED
                         hasNfsSupport = $someBoolean
                         # REQUIRED
                         hasSmbSupport = $someBoolean
                         # OPTIONAL
                         smbCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                     # REQUIRED
                     hostname = $someString
                     # OPTIONAL
                     nasFlashBladeApiCredentials = @{
                         # OPTIONAL
                         apiCertificate = $someString
                         # OPTIONAL
                         certificateId = $someString
                         # REQUIRED
                         apiToken = $someString
                         # REQUIRED
                         hasSmbSupport = $someBoolean
                         # OPTIONAL
                         smbCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                     # OPTIONAL
                     nasTmpApiCredentials = @{
                         # OPTIONAL
                         apiCertificate = $someString
                         # OPTIONAL
                         apiPassword = $someString
                         # OPTIONAL
                         apiUsername = $someString
                         # OPTIONAL
                         certificateId = $someString
                     }
                     # OPTIONAL
                     nutanixFileServerParameters = @{
                         # OPTIONAL
                         apiCertificate = $someString
                         # OPTIONAL
                         certificateId = $someString
                         # OPTIONAL
                         apiPassword = $someString
                         # OPTIONAL
                         apiUsername = $someString
                         # REQUIRED
                         hasSmbSupport = $someBoolean
                         # OPTIONAL
                         smbCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                     # OPTIONAL
                     smbCredentials = @{
                         # OPTIONAL
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RegisterNasSystemReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterNasSystem operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: UpdateNasShares
              
             $query = New-RscMutationNas -UpdateNasShares
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 updateNasSharesRequest = @{
                     # REQUIRED
                     nasShareProperties = @(
                         @{
                             # OPTIONAL
                             isIsilonChangelistEnabled = $someBoolean
                             # REQUIRED
                             id = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateNasShares operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: UpdateNasSystem
              
             $query = New-RscMutationNas -UpdateNasSystem
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 nasSystemUpdateProperties = @{
                     # OPTIONAL
                     hostname = $someString
                     # OPTIONAL
                     isIsilonChangelistEnabled = $someBoolean
                     # OPTIONAL
                     shouldResetGeneratedNamespaceSmbCredentials = $someBoolean
                     # OPTIONAL
                     shouldGrantSmbShareRootAccess = $someBoolean
                     # OPTIONAL
                     shouldGrantNfsShareRootAccess = $someBoolean
                     # OPTIONAL
                     genericNasSystemParameters = @{
                         # REQUIRED
                         hasNfsSupport = $someBoolean
                         # REQUIRED
                         hasSmbSupport = $someBoolean
                         # OPTIONAL
                         smbCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                     # OPTIONAL
                     nasApiCredentials = @{
                         # OPTIONAL
                         apiCertificate = $someString
                         # OPTIONAL
                         apiPassword = $someString
                         # OPTIONAL
                         apiUsername = $someString
                         # OPTIONAL
                         certificateId = $someString
                     }
                     # OPTIONAL
                     nasFlashBladeApiCredentials = @{
                         # OPTIONAL
                         apiCertificate = $someString
                         # OPTIONAL
                         certificateId = $someString
                         # REQUIRED
                         apiToken = $someString
                         # REQUIRED
                         hasSmbSupport = $someBoolean
                         # OPTIONAL
                         smbCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                     # OPTIONAL
                     nutanixFileServerParameters = @{
                         # OPTIONAL
                         apiCertificate = $someString
                         # OPTIONAL
                         certificateId = $someString
                         # OPTIONAL
                         apiPassword = $someString
                         # OPTIONAL
                         apiUsername = $someString
                         # REQUIRED
                         hasSmbSupport = $someBoolean
                         # OPTIONAL
                         smbCredentials = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                     # OPTIONAL
                     smbCredentials = @{
                         # OPTIONAL
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateNasSystemReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateNasSystem operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationNfs</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationNfs</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 3 operations in the 'NFS' API domain: CreateReaderTarget, CreateTarget, or UpdateTarget.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationNfs creates a new mutation object for operations in the 'NFS' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'NFS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateReaderTarget, CreateTarget, or UpdateTarget. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNfs -CreateReaderTarget).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNfs -CreateReaderTarget).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationNfs</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nfs
             # API Operation: CreateReaderTarget
              
             $query = New-RscMutationNfs -CreateReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 host = $someString
                 # REQUIRED
                 exportDir = $someString
                 # OPTIONAL
                 nfsVersion = $someInt
                 # REQUIRED
                 nfsAuthType = $someAuthTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthTypeEnum]) for enum values.
                 # OPTIONAL
                 otherNfsOptions = $someString
                 # REQUIRED
                 fileLockPeriodInSeconds = $someInt
                 # REQUIRED
                 destinationFolder = $someString
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 encryptionPassword = $someString
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateReaderTarget operation of the 'NFS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nfs
             # API Operation: CreateTarget
              
             $query = New-RscMutationNfs -CreateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 host = $someString
                 # REQUIRED
                 exportDir = $someString
                 # OPTIONAL
                 nfsVersion = $someInt
                 # REQUIRED
                 nfsAuthType = $someAuthTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthTypeEnum]) for enum values.
                 # OPTIONAL
                 otherNfsOptions = $someString
                 # REQUIRED
                 fileLockPeriodInSeconds = $someInt
                 # REQUIRED
                 destinationFolder = $someString
                 # REQUIRED
                 isConsolidationEnabled = $someBoolean
                 # OPTIONAL
                 encryptionPassword = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateTarget operation of the 'NFS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nfs
             # API Operation: UpdateTarget
              
             $query = New-RscMutationNfs -UpdateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 host = $someString
                 # OPTIONAL
                 exportDir = $someString
                 # OPTIONAL
                 nfsAuthType = $someAuthTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthTypeEnum]) for enum values.
                 # OPTIONAL
                 fileLockPeriodInSeconds = $someInt
                 # OPTIONAL
                 isConsolidationEnabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTarget operation of the 'NFS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationNutanix</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationNutanix</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 27 operations in the 'Nutanix' API domain: BatchExportVm, BatchMountVm, BulkOnDemandSnapshotVm, CreateCluster, CreateOnDemandBackup, CreatePrismCentral, DeleteCluster, DeleteMountV1, DeletePrismCentral, DeleteSnapshot, DeleteSnapshots, DownloadFilesSnapshot, DownloadSnapshot, DownloadVdisks, DownloadVmFromLocation, ExportSnapshot, MigrateMountV1, MountSnapshotV1, MountVdisks, PatchMountV1, RefreshCluster, RefreshPrismCentral, RegisterAgentVm, RestoreFilesSnapshot, UpdateCluster, UpdatePrismCentral, or UpdateVm.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationNutanix creates a new mutation object for operations in the 'Nutanix' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 27 operations in the 'Nutanix' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BatchExportVm, BatchMountVm, BulkOnDemandSnapshotVm, CreateCluster, CreateOnDemandBackup, CreatePrismCentral, DeleteCluster, DeleteMountV1, DeletePrismCentral, DeleteSnapshot, DeleteSnapshots, DownloadFilesSnapshot, DownloadSnapshot, DownloadVdisks, DownloadVmFromLocation, ExportSnapshot, MigrateMountV1, MountSnapshotV1, MountVdisks, PatchMountV1, RefreshCluster, RefreshPrismCentral, RegisterAgentVm, RestoreFilesSnapshot, UpdateCluster, UpdatePrismCentral, or UpdateVm. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNutanix -BatchExportVm).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNutanix -BatchExportVm).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationNutanix</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BatchExportVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchMountVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkOnDemandSnapshotVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOnDemandBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreatePrismCentral</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteMountV1</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeletePrismCentral</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadFilesSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadVdisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadVmFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MigrateMountV1</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MountSnapshotV1</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MountVdisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PatchMountV1</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshPrismCentral</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterAgentVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreFilesSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdatePrismCentral</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateVm</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: BatchExportVm
              
             $query = New-RscMutationNutanix -BatchExportVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             vmNamePrefix = $someString
                             # REQUIRED
                             exportConfig = @{
                                 # OPTIONAL
                                 nutanixClusterId = $someString
                                 # OPTIONAL
                                 powerOn = $someBoolean
                                 # OPTIONAL
                                 removeNetworkDevices = $someBoolean
                                 # OPTIONAL
                                 vmName = $someString
                                 # OPTIONAL
                                 keepMacAddresses = $someBoolean
                                 # OPTIONAL
                                 nicNetworkUuids = @(
                                     $someString
                                 )
                                 # REQUIRED
                                 containerNaturalId = $someString
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchExportNutanixVmReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchExportVm operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: BatchMountVm
              
             $query = New-RscMutationNutanix -BatchMountVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             vmNamePrefix = $someString
                             # REQUIRED
                             mountConfig = @{
                                 # OPTIONAL
                                 containerNaturalId = $someString
                                 # OPTIONAL
                                 nutanixClusterId = $someString
                                 # OPTIONAL
                                 shouldMigrateImmediately = $someBoolean
                                 # OPTIONAL
                                 shouldPowerOn = $someBoolean
                                 # OPTIONAL
                                 shouldRemoveNetwork = $someBoolean
                                 # OPTIONAL
                                 targetNetwork = $someString
                                 # OPTIONAL
                                 vmName = $someString
                                 # OPTIONAL
                                 keepMacAddresses = $someBoolean
                                 # OPTIONAL
                                 nicNetworkUuids = @(
                                     $someString
                                 )
                                 # REQUIRED
                                 shouldDisableMigration = $someBoolean
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchMountNutanixVmReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchMountVm operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: BulkOnDemandSnapshotVm
              
             $query = New-RscMutationNutanix -BulkOnDemandSnapshotVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     vms = @(
                         @{
                             # REQUIRED
                             backupConfig = @{
                                 # OPTIONAL
                                 slaId = $someString
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkOnDemandSnapshotNutanixVmReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkOnDemandSnapshotVm operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: CreateCluster
              
             $query = New-RscMutationNutanix -CreateCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 nutanixClusterConfig = @{
                     # REQUIRED
                     caCerts = $someString
                     # REQUIRED
                     hostname = $someString
                     # REQUIRED
                     nutanixClusterUuid = $someString
                     # REQUIRED
                     password = $someString
                     # REQUIRED
                     username = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCluster operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: CreateOnDemandBackup
              
             $query = New-RscMutationNutanix -CreateOnDemandBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOnDemandBackup operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: CreatePrismCentral
              
             $query = New-RscMutationNutanix -CreatePrismCentral
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 prismCentralConfig = @{
                     # REQUIRED
                     caCerts = $someString
                     # REQUIRED
                     hostname = $someString
                     # REQUIRED
                     password = $someString
                     # REQUIRED
                     username = $someString
                 }
                 # REQUIRED
                 prismElementCdmTuple = @(
                     @{
                         # REQUIRED
                         nutanixClusterId = $someString
                         # REQUIRED
                         cdmClusterId = $someString
                     }
                 )
                 # OPTIONAL
                 isDrEnabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreatePrismCentral operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DeleteCluster
              
             $query = New-RscMutationNutanix -DeleteCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCluster operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DeleteMountV1
              
             $query = New-RscMutationNutanix -DeleteMountV1
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteMountV1 operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DeletePrismCentral
              
             $query = New-RscMutationNutanix -DeletePrismCentral
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeletePrismCentral operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DeleteSnapshot
              
             $query = New-RscMutationNutanix -DeleteSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 location = $someInternalDeleteNutanixSnapshotRequestLocation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InternalDeleteNutanixSnapshotRequestLocation]) for enum values.
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSnapshot operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DeleteSnapshots
              
             $query = New-RscMutationNutanix -DeleteSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSnapshots operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DownloadFilesSnapshot
              
             $query = New-RscMutationNutanix -DownloadFilesSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                     # REQUIRED
                     paths = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadFilesSnapshot operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DownloadSnapshot
              
             $query = New-RscMutationNutanix -DownloadSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshot operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DownloadVdisks
              
             $query = New-RscMutationNutanix -DownloadVdisks
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 vdiskIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadVdisks operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: DownloadVmFromLocation
              
             $query = New-RscMutationNutanix -DownloadVmFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadVmFromLocation operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: ExportSnapshot
              
             $query = New-RscMutationNutanix -ExportSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     nutanixClusterId = $someString
                     # OPTIONAL
                     powerOn = $someBoolean
                     # OPTIONAL
                     removeNetworkDevices = $someBoolean
                     # OPTIONAL
                     vmName = $someString
                     # OPTIONAL
                     keepMacAddresses = $someBoolean
                     # OPTIONAL
                     nicNetworkUuids = @(
                         $someString
                     )
                     # REQUIRED
                     containerNaturalId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportSnapshot operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: MigrateMountV1
              
             $query = New-RscMutationNutanix -MigrateMountV1
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the MigrateMountV1 operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: MountSnapshotV1
              
             $query = New-RscMutationNutanix -MountSnapshotV1
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     containerNaturalId = $someString
                     # OPTIONAL
                     nutanixClusterId = $someString
                     # OPTIONAL
                     shouldMigrateImmediately = $someBoolean
                     # OPTIONAL
                     shouldPowerOn = $someBoolean
                     # OPTIONAL
                     shouldRemoveNetwork = $someBoolean
                     # OPTIONAL
                     targetNetwork = $someString
                     # OPTIONAL
                     vmName = $someString
                     # OPTIONAL
                     keepMacAddresses = $someBoolean
                     # OPTIONAL
                     nicNetworkUuids = @(
                         $someString
                     )
                     # REQUIRED
                     shouldDisableMigration = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the MountSnapshotV1 operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: MountVdisks
              
             $query = New-RscMutationNutanix -MountVdisks
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     shouldMigrateImmediately = $someBoolean
                     # OPTIONAL
                     containerNaturalId = $someString
                     # REQUIRED
                     shouldDisableMigration = $someBoolean
                     # REQUIRED
                     targetVirtualMachineId = $someString
                     # REQUIRED
                     virtualDiskIds = @(
                         $someString
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the MountVdisks operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: PatchMountV1
              
             $query = New-RscMutationNutanix -PatchMountV1
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     shouldPowerOn = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PatchNutanixMountV1Reply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PatchMountV1 operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: RefreshCluster
              
             $query = New-RscMutationNutanix -RefreshCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshCluster operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: RefreshPrismCentral
              
             $query = New-RscMutationNutanix -RefreshPrismCentral
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshPrismCentral operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: RegisterAgentVm
              
             $query = New-RscMutationNutanix -RegisterAgentVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterAgentVm operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: RestoreFilesSnapshot
              
             $query = New-RscMutationNutanix -RestoreFilesSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     targetVirtualMachineId = $someString
                     # REQUIRED
                     restoreConfig = @(
                         @{
                             # REQUIRED
                             path = $someString
                             # REQUIRED
                             restorePath = $someString
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreFilesSnapshot operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: UpdateCluster
              
             $query = New-RscMutationNutanix -UpdateCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 patchProperties = @{
                     # OPTIONAL
                     caCerts = $someString
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     hostname = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     snapshotConsistencyMandate = $someCdmNutanixSnapshotConsistencyMandate # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmNutanixSnapshotConsistencyMandate]) for enum values.
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateNutanixClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCluster operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: UpdatePrismCentral
              
             $query = New-RscMutationNutanix -UpdatePrismCentral
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 patchProperties = @{
                     # OPTIONAL
                     caCerts = $someString
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     hostname = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     isDrEnabled = $someBoolean
                     # OPTIONAL
                     nutanixClusters = @(
                         @{
                             # OPTIONAL
                             name = $someString
                             # OPTIONAL
                             password = $someString
                             # OPTIONAL
                             username = $someString
                             # REQUIRED
                             clusterUuid = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateNutanixPrismCentralReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdatePrismCentral operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: UpdateVm
              
             $query = New-RscMutationNutanix -UpdateVm
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 vmPatchProperties = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     excludedDiskIds = @(
                         $someString
                     )
                     # OPTIONAL
                     isPaused = $someBoolean
                     # OPTIONAL
                     snapshotConsistencyMandate = $someCdmNutanixSnapshotConsistencyMandate # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmNutanixSnapshotConsistencyMandate]) for enum values.
                     # OPTIONAL
                     postBackupScript = @{
                         # REQUIRED
                         failureHandling = $someNutanixVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixVirtualMachineScriptDetailFailureHandling]) for enum values.
                         # REQUIRED
                         scriptPath = $someString
                         # REQUIRED
                         timeoutMs = $someInt64
                     }
                     # OPTIONAL
                     postSnapScript = @{
                         # REQUIRED
                         failureHandling = $someNutanixVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixVirtualMachineScriptDetailFailureHandling]) for enum values.
                         # REQUIRED
                         scriptPath = $someString
                         # REQUIRED
                         timeoutMs = $someInt64
                     }
                     # OPTIONAL
                     preBackupScript = @{
                         # REQUIRED
                         failureHandling = $someNutanixVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixVirtualMachineScriptDetailFailureHandling]) for enum values.
                         # REQUIRED
                         scriptPath = $someString
                         # REQUIRED
                         timeoutMs = $someInt64
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixVmDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateVm operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationO365</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationO365</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 33 operations in the 'Office 365' API domain: AddOrg, BackupMailbox, BackupOnedrive, BackupSharePointSite, BackupSharepointDrive, BackupSharepointList, BackupTeam, CreateAppComplete, CreateAppKickoff, DeleteAzureApp, DeleteOrg, DeleteServiceAccount, EnableSharePoint, EnableTeams, ExportMailbox, ExportMailboxV2, InsertCustomerApp, OauthConsentComplete, OauthConsentKickoff, PdlGroups, RefreshOrg, RestoreMailbox, RestoreMailboxV2, RestoreSnappable, RestoreTeamsConversations, RestoreTeamsFiles, SaaSSetupKickoff, SaasSetupComplete, SetServiceAccount, SetupKickoff, UpdateAppAuthStatus, UpdateAppPermissions, or UpdateOrgCustomName.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationO365 creates a new mutation object for operations in the 'Office 365' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 33 operations in the 'Office 365' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddOrg, BackupMailbox, BackupOnedrive, BackupSharePointSite, BackupSharepointDrive, BackupSharepointList, BackupTeam, CreateAppComplete, CreateAppKickoff, DeleteAzureApp, DeleteOrg, DeleteServiceAccount, EnableSharePoint, EnableTeams, ExportMailbox, ExportMailboxV2, InsertCustomerApp, OauthConsentComplete, OauthConsentKickoff, PdlGroups, RefreshOrg, RestoreMailbox, RestoreMailboxV2, RestoreSnappable, RestoreTeamsConversations, RestoreTeamsFiles, SaaSSetupKickoff, SaasSetupComplete, SetServiceAccount, SetupKickoff, UpdateAppAuthStatus, UpdateAppPermissions, or UpdateOrgCustomName. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationO365 -AddOrg).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationO365 -AddOrg).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationO365</maml:name>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters />
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: AddOrg
              
             $query = New-RscMutationO365 -AddOrg
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 tenantId = $someString
                 # REQUIRED
                 stateToken = $someString
                 # REQUIRED
                 exocomputeClusterId = $someString
                 # REQUIRED
                 appTypes = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddO365OrgResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddOrg operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: BackupMailbox
              
             $query = New-RscMutationO365 -BackupMailbox
              
             # REQUIRED
             $query.Var.mailboxIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupMailbox operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: BackupOnedrive
              
             $query = New-RscMutationO365 -BackupOnedrive
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snappableUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupOnedrive operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: BackupSharePointSite
              
             $query = New-RscMutationO365 -BackupSharePointSite
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 siteFid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupSharePointSite operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: BackupSharepointDrive
              
             $query = New-RscMutationO365 -BackupSharepointDrive
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snappableUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupSharepointDrive operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: BackupSharepointList
              
             $query = New-RscMutationO365 -BackupSharepointList
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snappableUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupSharepointList operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: BackupTeam
              
             $query = New-RscMutationO365 -BackupTeam
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snappableUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupTeam operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: CreateAppComplete
              
             $query = New-RscMutationO365 -CreateAppComplete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 appClientId = $someString
                 # REQUIRED
                 stateToken = $someString
                 # REQUIRED
                 tenantId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAppComplete operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: CreateAppKickoff
              
             $query = New-RscMutationO365 -CreateAppKickoff
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 appType = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateO365AppKickoffResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAppKickoff operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: DeleteAzureApp
              
             $query = New-RscMutationO365 -DeleteAzureApp
              
             # REQUIRED
             $query.Var.o365AppClientId = $someString
             # REQUIRED
             $query.Var.o365AppType = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteAzureApp operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: DeleteOrg
              
             $query = New-RscMutationO365 -DeleteOrg
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteOrg operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: DeleteServiceAccount
              
             $query = New-RscMutationO365 -DeleteServiceAccount
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteServiceAccount operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: EnableSharePoint
              
             $query = New-RscMutationO365 -EnableSharePoint
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 exocomputeClusterId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableSharePoint operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: EnableTeams
              
             $query = New-RscMutationO365 -EnableTeams
              
             # REQUIRED
             $query.Var.exocomputeClusterId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableTeams operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: ExportMailbox
              
             $query = New-RscMutationO365 -ExportMailbox
              
             # REQUIRED
             $query.Var.exportConfig = @{
                 # OPTIONAL
                 orgUuid = $someString
                 # REQUIRED
                 fromMailboxUuid = $someString
                 # REQUIRED
                 toMailboxUuid = $someString
                 # OPTIONAL
                 snapshotUuid = $someString
                 # REQUIRED
                 exportConfigs = @(
                     @{
                         # REQUIRED
                         SnapshotUUID = $someString
                         # OPTIONAL
                         EmailID = $someString
                         # OPTIONAL
                         FolderID = $someString
                         # OPTIONAL
                         hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values.
                         # OPTIONAL
                         parentFolderId = $someString
                     }
                 )
                 # OPTIONAL
                 actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values.
                 # OPTIONAL
                 inplaceRestoreConfig = @{
                     # REQUIRED
                     nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values.
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportMailbox operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: ExportMailboxV2
              
             $query = New-RscMutationO365 -ExportMailboxV2
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 orgUuid = $someString
                 # REQUIRED
                 fromMailboxUuid = $someString
                 # REQUIRED
                 toMailboxUuid = $someString
                 # OPTIONAL
                 snapshotUuid = $someString
                 # REQUIRED
                 exportConfigs = @(
                     @{
                         # REQUIRED
                         SnapshotUUID = $someString
                         # OPTIONAL
                         EmailID = $someString
                         # OPTIONAL
                         FolderID = $someString
                         # OPTIONAL
                         hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values.
                         # OPTIONAL
                         parentFolderId = $someString
                     }
                 )
                 # OPTIONAL
                 actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values.
                 # OPTIONAL
                 inplaceRestoreConfig = @{
                     # REQUIRED
                     nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values.
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportMailboxV2 operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: InsertCustomerApp
              
             $query = New-RscMutationO365 -InsertCustomerApp
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 appType = $someString
                 # REQUIRED
                 appClientId = $someString
                 # REQUIRED
                 appClientSecret = $someString
                 # REQUIRED
                 subscriptionId = $someString
                 # OPTIONAL
                 base64AppCertificate = $someString
                 # OPTIONAL
                 base64AppPrivateKey = $someString
                 # OPTIONAL
                 updateAppCredentials = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InsertCustomerApp operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: OauthConsentComplete
              
             $query = New-RscMutationO365 -OauthConsentComplete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 tenantId = $someString
                 # REQUIRED
                 code = $someString
                 # REQUIRED
                 stateToken = $someString
                 # REQUIRED
                 redirectUrl = $someString
                 # REQUIRED
                 resourceNaturalId = $someString
                 # OPTIONAL
                 resourceId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OauthConsentCompleteReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the OauthConsentComplete operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: OauthConsentKickoff
              
             $query = New-RscMutationO365 -OauthConsentKickoff
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 appType = $someString
                 # OPTIONAL
                 resourceId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OauthConsentKickoffReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the OauthConsentKickoff operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: PdlGroups
              
             $query = New-RscMutationO365 -PdlGroups
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 pdlAndWorkloadPairs = @(
                     @{
                         # REQUIRED
                         pdl = $someString
                         # REQUIRED
                         workload = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365PdlGroupsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PdlGroups operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: RefreshOrg
              
             $query = New-RscMutationO365 -RefreshOrg
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshOrg operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: RestoreMailbox
              
             $query = New-RscMutationO365 -RestoreMailbox
              
             # REQUIRED
             $query.Var.restoreConfig = @{
                 # OPTIONAL
                 orgUuid = $someString
                 # REQUIRED
                 mailboxUuid = $someString
                 # OPTIONAL
                 snapshotUuid = $someString
                 # REQUIRED
                 restoreConfigs = @(
                     @{
                         # REQUIRED
                         SnapshotUUID = $someString
                         # OPTIONAL
                         EmailID = $someString
                         # OPTIONAL
                         FolderID = $someString
                         # OPTIONAL
                         hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values.
                         # OPTIONAL
                         parentFolderId = $someString
                     }
                 )
                 # REQUIRED
                 actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values.
                 # OPTIONAL
                 inplaceRestoreConfig = @{
                     # REQUIRED
                     nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values.
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreMailbox operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: RestoreMailboxV2
              
             $query = New-RscMutationO365 -RestoreMailboxV2
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 orgUuid = $someString
                 # REQUIRED
                 mailboxUuid = $someString
                 # OPTIONAL
                 snapshotUuid = $someString
                 # REQUIRED
                 restoreConfigs = @(
                     @{
                         # REQUIRED
                         SnapshotUUID = $someString
                         # OPTIONAL
                         EmailID = $someString
                         # OPTIONAL
                         FolderID = $someString
                         # OPTIONAL
                         hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values.
                         # OPTIONAL
                         parentFolderId = $someString
                     }
                 )
                 # REQUIRED
                 actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values.
                 # OPTIONAL
                 inplaceRestoreConfig = @{
                     # REQUIRED
                     nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values.
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CreateOnDemandJobReply&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreMailboxV2 operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationOracle</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationOracle</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 20 operations in the 'Oracle' API domain: BulkUpdateDatabases, BulkUpdateHosts, BulkUpdateRacs, CreatePdbRestore, DeleteAllDatabaseSnapshots, DeleteMount, DownloadDatabaseSnapshot, DownloadSnapshotFromLocation, DownloadSnapshotFromLocationV2, ExportDatabase, ExportTablespace, InstantRecoverSnapshot, MountDatabase, RefreshDatabase, RestoreLogs, TakeOnDemandDatabaseSnapshot, TakeOnDemandLogSnapshot, UpdateDataGuardGroup, ValidateAcoFile, or ValidateDatabaseBackups.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationOracle creates a new mutation object for operations in the 'Oracle' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 20 operations in the 'Oracle' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkUpdateDatabases, BulkUpdateHosts, BulkUpdateRacs, CreatePdbRestore, DeleteAllDatabaseSnapshots, DeleteMount, DownloadDatabaseSnapshot, DownloadSnapshotFromLocation, DownloadSnapshotFromLocationV2, ExportDatabase, ExportTablespace, InstantRecoverSnapshot, MountDatabase, RefreshDatabase, RestoreLogs, TakeOnDemandDatabaseSnapshot, TakeOnDemandLogSnapshot, UpdateDataGuardGroup, ValidateAcoFile, or ValidateDatabaseBackups. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationOracle -BulkUpdateDatabases).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationOracle -BulkUpdateDatabases).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationOracle</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateDatabases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateHosts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateRacs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreatePdbRestore</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteAllDatabaseSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadDatabaseSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshotFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshotFromLocationV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportTablespace</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InstantRecoverSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MountDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RefreshDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreLogs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TakeOnDemandDatabaseSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TakeOnDemandLogSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateDataGuardGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateAcoFile</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateDatabaseBackups</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: BulkUpdateDatabases
              
             $query = New-RscMutationOracle -BulkUpdateDatabases
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkUpdateProperties = @{
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                     # OPTIONAL
                     oracleUpdate = @{
                         # OPTIONAL
                         configuredSlaDomainId = $someString
                         # OPTIONAL
                         hostMount = $someString
                         # OPTIONAL
                         logBackupFrequencyInMinutes = $someInt
                         # OPTIONAL
                         logRetentionHours = $someInt
                         # OPTIONAL
                         numChannels = $someInt
                         # OPTIONAL
                         hostLogRetentionHours = $someInt
                         # OPTIONAL
                         configuredSlaDomainIdDeprecated = $someString
                         # OPTIONAL
                         shouldDistributeBackupsAutomatically = $someBoolean
                         # OPTIONAL
                         nodeOrder = @(
                             @{
                                 # REQUIRED
                                 nodeName = $someString
                                 # REQUIRED
                                 order = $someInt
                             }
                         )
                         # OPTIONAL
                         oracleUpdateCommon = @{
                             # OPTIONAL
                             hostLogRetentionHours = $someInt
                             # OPTIONAL
                             hostMount = $someString
                             # OPTIONAL
                             logBackupFrequencyInMinutes = $someInt
                             # OPTIONAL
                             logRetentionHours = $someInt
                             # OPTIONAL
                             numChannels = $someInt
                             # OPTIONAL
                             hasLogConfigFromSla = $someBoolean
                             # OPTIONAL
                             shouldEnableHighFileCountSupport = $someBoolean
                             # OPTIONAL
                             shouldUseSecureThriftForDataTransfer = $someBoolean
                             # OPTIONAL
                             sectionSizeInGb = $someInt
                             # OPTIONAL
                             isPaused = $someBoolean
                         }
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateOracleDatabasesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateDatabases operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: BulkUpdateHosts
              
             $query = New-RscMutationOracle -BulkUpdateHosts
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkUpdateProperties = @{
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                     # OPTIONAL
                     oracleUpdate = @{
                         # OPTIONAL
                         configuredSlaDomainId = $someString
                         # OPTIONAL
                         hostMount = $someString
                         # OPTIONAL
                         logBackupFrequencyInMinutes = $someInt
                         # OPTIONAL
                         logRetentionHours = $someInt
                         # OPTIONAL
                         numChannels = $someInt
                         # OPTIONAL
                         hostLogRetentionHours = $someInt
                         # OPTIONAL
                         configuredSlaDomainIdDeprecated = $someString
                         # OPTIONAL
                         shouldDistributeBackupsAutomatically = $someBoolean
                         # OPTIONAL
                         nodeOrder = @(
                             @{
                                 # REQUIRED
                                 nodeName = $someString
                                 # REQUIRED
                                 order = $someInt
                             }
                         )
                         # OPTIONAL
                         oracleUpdateCommon = @{
                             # OPTIONAL
                             hostLogRetentionHours = $someInt
                             # OPTIONAL
                             hostMount = $someString
                             # OPTIONAL
                             logBackupFrequencyInMinutes = $someInt
                             # OPTIONAL
                             logRetentionHours = $someInt
                             # OPTIONAL
                             numChannels = $someInt
                             # OPTIONAL
                             hasLogConfigFromSla = $someBoolean
                             # OPTIONAL
                             shouldEnableHighFileCountSupport = $someBoolean
                             # OPTIONAL
                             shouldUseSecureThriftForDataTransfer = $someBoolean
                             # OPTIONAL
                             sectionSizeInGb = $someInt
                             # OPTIONAL
                             isPaused = $someBoolean
                         }
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateOracleHostsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateHosts operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: BulkUpdateRacs
              
             $query = New-RscMutationOracle -BulkUpdateRacs
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 bulkUpdateProperties = @{
                     # REQUIRED
                     ids = @(
                         $someString
                     )
                     # OPTIONAL
                     oracleUpdate = @{
                         # OPTIONAL
                         configuredSlaDomainId = $someString
                         # OPTIONAL
                         hostMount = $someString
                         # OPTIONAL
                         logBackupFrequencyInMinutes = $someInt
                         # OPTIONAL
                         logRetentionHours = $someInt
                         # OPTIONAL
                         numChannels = $someInt
                         # OPTIONAL
                         hostLogRetentionHours = $someInt
                         # OPTIONAL
                         configuredSlaDomainIdDeprecated = $someString
                         # OPTIONAL
                         shouldDistributeBackupsAutomatically = $someBoolean
                         # OPTIONAL
                         nodeOrder = @(
                             @{
                                 # REQUIRED
                                 nodeName = $someString
                                 # REQUIRED
                                 order = $someInt
                             }
                         )
                         # OPTIONAL
                         oracleUpdateCommon = @{
                             # OPTIONAL
                             hostLogRetentionHours = $someInt
                             # OPTIONAL
                             hostMount = $someString
                             # OPTIONAL
                             logBackupFrequencyInMinutes = $someInt
                             # OPTIONAL
                             logRetentionHours = $someInt
                             # OPTIONAL
                             numChannels = $someInt
                             # OPTIONAL
                             hasLogConfigFromSla = $someBoolean
                             # OPTIONAL
                             shouldEnableHighFileCountSupport = $someBoolean
                             # OPTIONAL
                             shouldUseSecureThriftForDataTransfer = $someBoolean
                             # OPTIONAL
                             sectionSizeInGb = $someInt
                             # OPTIONAL
                             isPaused = $someBoolean
                         }
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BulkUpdateOracleRacsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateRacs operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: CreatePdbRestore
              
             $query = New-RscMutationOracle -CreatePdbRestore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     pdbsToRestore = @(
                         $someString
                     )
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         snapshotId = $someString
                         # OPTIONAL
                         timestampMs = $someInt64
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreatePdbRestore operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DeleteAllDatabaseSnapshots
              
             $query = New-RscMutationOracle -DeleteAllDatabaseSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteAllDatabaseSnapshots operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DeleteMount
              
             $query = New-RscMutationOracle -DeleteMount
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 force = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteMount operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DownloadDatabaseSnapshot
              
             $query = New-RscMutationOracle -DownloadDatabaseSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadDatabaseSnapshot operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DownloadSnapshotFromLocation
              
             $query = New-RscMutationOracle -DownloadSnapshotFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshotFromLocation operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DownloadSnapshotFromLocationV2
              
             $query = New-RscMutationOracle -DownloadSnapshotFromLocationV2
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshotFromLocationV2 operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: ExportDatabase
              
             $query = New-RscMutationOracle -ExportDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 request = @{
                     # REQUIRED
                     config = @{
                         # OPTIONAL
                         restoreFilesPath = $someString
                         # OPTIONAL
                         shouldRestoreFilesOnly = $someBoolean
                         # OPTIONAL
                         targetMountPath = $someString
                         # OPTIONAL
                         advancedRecoveryConfigBase64 = $someString
                         # OPTIONAL
                         archiveLogPath = $someString
                         # OPTIONAL
                         cloneDbName = $someString
                         # OPTIONAL
                         customPfilePath = $someString
                         # OPTIONAL
                         numChannels = $someInt
                         # OPTIONAL
                         postScriptPath = $someString
                         # OPTIONAL
                         preScriptPath = $someString
                         # OPTIONAL
                         shouldStopRecoveryOnPreScriptFailure = $someBoolean
                         # OPTIONAL
                         pdbsToClone = @(
                             $someString
                         )
                         # OPTIONAL
                         shouldSkipDropDbInUndo = $someBoolean
                         # OPTIONAL
                         targetRacHostIds = @(
                             $someString
                         )
                         # OPTIONAL
                         targetRacPrimaryHostId = $someString
                         # OPTIONAL
                         shouldAllowRenameToSource = $someBoolean
                         # REQUIRED
                         recoveryPoint = @{
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             timestampMs = $someInt64
                         }
                         # REQUIRED
                         targetOracleHostOrRacId = $someString
                     }
                     # REQUIRED
                     id = $someString
                 }
                 # OPTIONAL
                 advancedRecoveryConfigMap = @(
                     @{
                         # OPTIONAL
                         key = $someString
                         # OPTIONAL
                         value = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportDatabase operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: ExportTablespace
              
             $query = New-RscMutationOracle -ExportTablespace
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     exposeAllLogs = $someBoolean
                     # REQUIRED
                     auxiliaryDestinationPath = $someString
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         snapshotId = $someString
                         # OPTIONAL
                         timestampMs = $someInt64
                     }
                     # REQUIRED
                     tablespaceName = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportTablespace operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: InstantRecoverSnapshot
              
             $query = New-RscMutationOracle -InstantRecoverSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     numChannels = $someInt
                     # OPTIONAL
                     shouldSkipDropDbInUndo = $someBoolean
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         snapshotId = $someString
                         # OPTIONAL
                         timestampMs = $someInt64
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InstantRecoverSnapshot operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: MountDatabase
              
             $query = New-RscMutationOracle -MountDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 request = @{
                     # REQUIRED
                     config = @{
                         # OPTIONAL
                         shouldMountFilesOnly = $someBoolean
                         # OPTIONAL
                         targetMountPath = $someString
                         # OPTIONAL
                         advancedRecoveryConfigBase64 = $someString
                         # OPTIONAL
                         customPfilePath = $someString
                         # OPTIONAL
                         numChannels = $someInt
                         # OPTIONAL
                         postScriptPath = $someString
                         # OPTIONAL
                         preScriptPath = $someString
                         # OPTIONAL
                         shouldStopRecoveryOnPreScriptFailure = $someBoolean
                         # OPTIONAL
                         pdbsToLiveMount = @(
                             $someString
                         )
                         # OPTIONAL
                         targetRacHostIds = @(
                             $someString
                         )
                         # OPTIONAL
                         shouldSkipDropDbInUndo = $someBoolean
                         # OPTIONAL
                         lmDbName = $someString
                         # OPTIONAL
                         targetRacPrimaryHostId = $someString
                         # OPTIONAL
                         shouldAllowRenameToSource = $someBoolean
                         # REQUIRED
                         recoveryPoint = @{
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             timestampMs = $someInt64
                         }
                         # REQUIRED
                         targetOracleHostOrRacId = $someString
                     }
                     # REQUIRED
                     id = $someString
                 }
                 # OPTIONAL
                 advancedRecoveryConfigMap = @(
                     @{
                         # OPTIONAL
                         key = $someString
                         # OPTIONAL
                         value = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the MountDatabase operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: RefreshDatabase
              
             $query = New-RscMutationOracle -RefreshDatabase
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RefreshDatabase operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: RestoreLogs
              
             $query = New-RscMutationOracle -RestoreLogs
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     targetMountPath = $someString
                     # REQUIRED
                     oracleLogRecoveryRange = @{
                         # OPTIONAL
                         oracleTimeRange = @{
                             # OPTIONAL
                             endTime = $someDateTime
                             # OPTIONAL
                             startTime = $someDateTime
                         }
                     }
                     # REQUIRED
                     shouldMountFilesOnly = $someBoolean
                     # REQUIRED
                     targetOracleHostOrRacId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreLogs operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: TakeOnDemandDatabaseSnapshot
              
             $query = New-RscMutationOracle -TakeOnDemandDatabaseSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     forceFullSnapshot = $someBoolean
                     # OPTIONAL
                     baseOnDemandSnapshotConfig = @{
                         # OPTIONAL
                         slaId = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the TakeOnDemandDatabaseSnapshot operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: TakeOnDemandLogSnapshot
              
             $query = New-RscMutationOracle -TakeOnDemandLogSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the TakeOnDemandLogSnapshot operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: UpdateDataGuardGroup
              
             $query = New-RscMutationOracle -UpdateDataGuardGroup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 updateProperties = @{
                     # OPTIONAL
                     preferredDgMemberUniqueNames = @(
                         $someString
                     )
                     # OPTIONAL
                     shouldBackupFromPrimaryOnly = $someBoolean
                     # OPTIONAL
                     shouldUseSepsWallet = $someBoolean
                     # OPTIONAL
                     shouldForceDisableDgDiscovery = $someBoolean
                     # OPTIONAL
                     oracleUpdateCommon = @{
                         # OPTIONAL
                         hostLogRetentionHours = $someInt
                         # OPTIONAL
                         hostMount = $someString
                         # OPTIONAL
                         logBackupFrequencyInMinutes = $someInt
                         # OPTIONAL
                         logRetentionHours = $someInt
                         # OPTIONAL
                         numChannels = $someInt
                         # OPTIONAL
                         hasLogConfigFromSla = $someBoolean
                         # OPTIONAL
                         shouldEnableHighFileCountSupport = $someBoolean
                         # OPTIONAL
                         shouldUseSecureThriftForDataTransfer = $someBoolean
                         # OPTIONAL
                         sectionSizeInGb = $someInt
                         # OPTIONAL
                         isPaused = $someBoolean
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleDbDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateDataGuardGroup operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: ValidateAcoFile
              
             $query = New-RscMutationOracle -ValidateAcoFile
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 acoContentsBase64 = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 isLiveMount = $someBoolean
                 # REQUIRED
                 dbId = $someString
                 # OPTIONAL
                 isDifferentTargetDbName = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateOracleAcoFileReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateAcoFile operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: ValidateDatabaseBackups
              
             $query = New-RscMutationOracle -ValidateDatabaseBackups
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     numChannels = $someInt
                     # OPTIONAL
                     sgaMaxSizeInMb = $someInt64
                     # OPTIONAL
                     targetMountPath = $someString
                     # OPTIONAL
                     targetOracleHome = $someString
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         snapshotId = $someString
                         # OPTIONAL
                         timestampMs = $someInt64
                     }
                     # REQUIRED
                     targetOracleHostOrRacId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateDatabaseBackups operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationPolicy</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationPolicy</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 12 operations in the 'Policy' API domain: AddPolicyObjects, CreatePolicy, DeactivatePolicy, GetHealthMonitorPolicyStatus, RemovePolicyObjects, SeedEnabledPolicies, SeedInitialPolicies, SetPasswordComplexityPolicy, UpdateAutoEnablePolicyClusterConfig, UpdateHealthMonitorPolicyStatus, UpdateOrgSecurityPolicy, or UpdatePolicy.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationPolicy creates a new mutation object for operations in the 'Policy' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 12 operations in the 'Policy' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddPolicyObjects, CreatePolicy, DeactivatePolicy, GetHealthMonitorPolicyStatus, RemovePolicyObjects, SeedEnabledPolicies, SeedInitialPolicies, SetPasswordComplexityPolicy, UpdateAutoEnablePolicyClusterConfig, UpdateHealthMonitorPolicyStatus, UpdateOrgSecurityPolicy, or UpdatePolicy. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationPolicy -AddPolicyObjects).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationPolicy -AddPolicyObjects).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationPolicy</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddPolicyObjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreatePolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeactivatePolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GetHealthMonitorPolicyStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RemovePolicyObjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SeedEnabledPolicies</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SeedInitialPolicies</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SetPasswordComplexityPolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAutoEnablePolicyClusterConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateHealthMonitorPolicyStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateOrgSecurityPolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdatePolicy</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: AddPolicyObjects
              
             $query = New-RscMutationPolicy -AddPolicyObjects
              
             # REQUIRED
             $query.Var.policyIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.objectIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.objectRootIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.clusterIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddPolicyObjects operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: CreatePolicy
              
             $query = New-RscMutationPolicy -CreatePolicy
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 colorEnum = $someClassificationPolicyColor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyColor]) for enum values.
                 # OPTIONAL
                 mode = $someClassificationPolicyMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyMode]) for enum values.
                 # OPTIONAL
                 analyzerIds = @(
                     $someString
                 )
                 # OPTIONAL
                 updateName = $someBoolean
                 # OPTIONAL
                 updateDescription = $someBoolean
                 # OPTIONAL
                 updateMode = $someBoolean
                 # OPTIONAL
                 updateAnalyzerIds = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClassificationPolicyDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreatePolicy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: DeactivatePolicy
              
             $query = New-RscMutationPolicy -DeactivatePolicy
              
             # REQUIRED
             $query.Var.policyId = $someString
             # REQUIRED
             $query.Var.runAsync = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeactivatePolicy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: GetHealthMonitorPolicyStatus
              
             $query = New-RscMutationPolicy -GetHealthMonitorPolicyStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 hasDetailedStatus = $someBoolean
                 # OPTIONAL
                 nodeIds = @(
                     $someString
                 )
                 # OPTIONAL
                 policyIds = @(
                     $someString
                 )
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetHealthMonitorPolicyStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetHealthMonitorPolicyStatus operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: RemovePolicyObjects
              
             $query = New-RscMutationPolicy -RemovePolicyObjects
              
             # REQUIRED
             $query.Var.policyIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.objectIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.objectRootIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.clusterIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.runAsync = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemovePolicyObjects operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: SeedEnabledPolicies
              
             $query = New-RscMutationPolicy -SeedEnabledPolicies
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SeedEnabledPoliciesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SeedEnabledPolicies operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: SeedInitialPolicies
              
             $query = New-RscMutationPolicy -SeedInitialPolicies
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SeedInitialPoliciesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SeedInitialPolicies operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: SetPasswordComplexityPolicy
              
             $query = New-RscMutationPolicy -SetPasswordComplexityPolicy
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 policy = @{
                     # REQUIRED
                     lengthPolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                     # REQUIRED
                     lowercasePolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                     # REQUIRED
                     uppercasePolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                     # REQUIRED
                     specialCharsPolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                     # REQUIRED
                     numericPolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                     # REQUIRED
                     passwordReusePolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                     # REQUIRED
                     passwordExpirationPolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                     # OPTIONAL
                     leakedDetectionPolicy = @{
                         # OPTIONAL
                         minValue = $someInt
                         # OPTIONAL
                         maxValue = $someInt
                         # OPTIONAL
                         defaultValue = $someInt
                         # REQUIRED
                         isActive = $someBoolean
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the SetPasswordComplexityPolicy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: UpdateAutoEnablePolicyClusterConfig
              
             $query = New-RscMutationPolicy -UpdateAutoEnablePolicyClusterConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterId = $someString
                 # OPTIONAL
                 enabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateAutoEnablePolicyClusterConfigReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAutoEnablePolicyClusterConfig operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: UpdateHealthMonitorPolicyStatus
              
             $query = New-RscMutationPolicy -UpdateHealthMonitorPolicyStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 runRequest = @{
                     # OPTIONAL
                     nodeIds = @(
                         $someString
                     )
                     # REQUIRED
                     policyIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateHealthMonitorPolicyStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateHealthMonitorPolicyStatus operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: UpdateOrgSecurityPolicy
              
             $query = New-RscMutationPolicy -UpdateOrgSecurityPolicy
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 disallowWeakerPolicy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateOrgSecurityPolicy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: UpdatePolicy
              
             $query = New-RscMutationPolicy -UpdatePolicy
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 colorEnum = $someClassificationPolicyColor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyColor]) for enum values.
                 # OPTIONAL
                 mode = $someClassificationPolicyMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyMode]) for enum values.
                 # OPTIONAL
                 analyzerIds = @(
                     $someString
                 )
                 # OPTIONAL
                 updateName = $someBoolean
                 # OPTIONAL
                 updateDescription = $someBoolean
                 # OPTIONAL
                 updateMode = $someBoolean
                 # OPTIONAL
                 updateAnalyzerIds = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClassificationPolicyDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdatePolicy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationRansomware</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationRansomware</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 2 operations in the 'Ransomware' API domain: BulkUpdateInvestigationStatus, or TriggerDetection.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationRansomware creates a new mutation object for operations in the 'Ransomware' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 2 operations in the 'Ransomware' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkUpdateInvestigationStatus, or TriggerDetection. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationRansomware -BulkUpdateInvestigationStatus).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationRansomware -BulkUpdateInvestigationStatus).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationRansomware</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkUpdateInvestigationStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TriggerDetection</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: BulkUpdateInvestigationStatus
              
             $query = New-RscMutationRansomware -BulkUpdateInvestigationStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 entities = @(
                     @{
                         # REQUIRED
                         entityType = $someDataThreatAnalyticsEnablementEntity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataThreatAnalyticsEnablementEntity]) for enum values.
                         # REQUIRED
                         entityId = $someString
                     }
                 )
                 # REQUIRED
                 isRansomwareMonitoringEnabled = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateInvestigationStatus operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: TriggerDetection
              
             $query = New-RscMutationRansomware -TriggerDetection
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterUuid = $someString
                 # OPTIONAL
                 snapshotId = $someString
                 # OPTIONAL
                 managedId = $someString
                 # OPTIONAL
                 previousSnapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TriggerRansomwareDetectionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the TriggerDetection operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationRcs</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationRcs</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'RCS' API domain: CreateAutomaticRcsTargetMapping, CreateRcsReaderTarget, CreateRcsTarget, or UpdateRcsAutomaticTargetMapping.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationRcs creates a new mutation object for operations in the 'RCS' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'RCS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateAutomaticRcsTargetMapping, CreateRcsReaderTarget, CreateRcsTarget, or UpdateRcsAutomaticTargetMapping. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationRcs -CreateAutomaticRcsTargetMapping).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationRcs -CreateAutomaticRcsTargetMapping).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationRcs</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateAutomaticRcsTargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateRcsReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateRcsTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateRcsAutomaticTargetMapping</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcs
             # API Operation: CreateAutomaticRcsTargetMapping
              
             $query = New-RscMutationRcs -CreateAutomaticRcsTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 region = $someRcsRegionEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsRegionEnumType]) for enum values.
                 # OPTIONAL
                 rsaKey = $someString
                 # REQUIRED
                 tier = $someRcsTierEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsTierEnumType]) for enum values.
                 # OPTIONAL
                 lockDurationDays = $someInt64
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # OPTIONAL
                 ipMapping = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         ips = @(
                             $someString
                         )
                     }
                 )
                 # OPTIONAL
                 shouldBypassProxy = $someBoolean
                 # OPTIONAL
                 redundancy = $someRcvRedundancy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcvRedundancy]) for enum values.
                 # OPTIONAL
                 azureKeyVaultKey = @{
                     # REQUIRED
                     kmsKeyVaultId = $someString
                     # REQUIRED
                     keyName = $someString
                     # REQUIRED
                     keyVersion = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAutomaticRcsTargetMapping operation of the 'RCS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcs
             # API Operation: CreateRcsReaderTarget
              
             $query = New-RscMutationRcs -CreateRcsReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 readerLocationName = $someString
                 # REQUIRED
                 rcsArchivalLocationName = $someString
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateRcsReaderTarget operation of the 'RCS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcs
             # API Operation: CreateRcsTarget
              
             $query = New-RscMutationRcs -CreateRcsTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 tier = $someRcsTierEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsTierEnumType]) for enum values.
                 # REQUIRED
                 instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values.
                 # REQUIRED
                 rsaKey = $someString
                 # REQUIRED
                 region = $someRcsRegionEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsRegionEnumType]) for enum values.
                 # REQUIRED
                 spaceUsageAlertThreshold = $someInt
                 # REQUIRED
                 lockDurationDays = $someInt64
                 # OPTIONAL
                 shouldBypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateRcsTarget operation of the 'RCS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcs
             # API Operation: UpdateRcsAutomaticTargetMapping
              
             $query = New-RscMutationRcs -UpdateRcsAutomaticTargetMapping
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # REQUIRED
                 lockDurationDays = $someInt64
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # OPTIONAL
                 shouldBypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateRcsAutomaticTargetMapping operation of the 'RCS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationRcv</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationRcv</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'RCV' API domain: ApprovePrivateEndpoint, CreateLocationsFromTemplate, CreatePrivateEndpointApprovalRequest, or UpdateTarget.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationRcv creates a new mutation object for operations in the 'RCV' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'RCV' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ApprovePrivateEndpoint, CreateLocationsFromTemplate, CreatePrivateEndpointApprovalRequest, or UpdateTarget. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationRcv -ApprovePrivateEndpoint).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationRcv -ApprovePrivateEndpoint).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationRcv</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ApprovePrivateEndpoint</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateLocationsFromTemplate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreatePrivateEndpointApprovalRequest</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: ApprovePrivateEndpoint
              
             $query = New-RscMutationRcv -ApprovePrivateEndpoint
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 privateEndpointId = $someString
                 # REQUIRED
                 requestMessage = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ApproveRcvPrivateEndpointReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ApprovePrivateEndpoint operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: CreateLocationsFromTemplate
              
             $query = New-RscMutationRcv -CreateLocationsFromTemplate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 region = $someRcsRegionEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsRegionEnumType]) for enum values.
                 # REQUIRED
                 tier = $someRcsTierEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsTierEnumType]) for enum values.
                 # OPTIONAL
                 lockDurationDays = $someInt64
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # OPTIONAL
                 ipMapping = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         ips = @(
                             $someString
                         )
                     }
                 )
                 # OPTIONAL
                 shouldBypassProxy = $someBoolean
                 # OPTIONAL
                 redundancy = $someRcvRedundancy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcvRedundancy]) for enum values.
                 # OPTIONAL
                 rsaKey = $someString
                 # OPTIONAL
                 azureKeyVaultKey = @{
                     # REQUIRED
                     kmsKeyVaultId = $someString
                     # REQUIRED
                     keyName = $someString
                     # REQUIRED
                     keyVersion = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;Target&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateLocationsFromTemplate operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: CreatePrivateEndpointApprovalRequest
              
             $query = New-RscMutationRcv -CreatePrivateEndpointApprovalRequest
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 privateEndpointId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateRcvPrivateEndpointApprovalRequestReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreatePrivateEndpointApprovalRequest operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: UpdateTarget
              
             $query = New-RscMutationRcv -UpdateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # REQUIRED
                 lockDurationDays = $someInt64
                 # OPTIONAL
                 ipMapping = @{
                     # REQUIRED
                     clusterUuid = $someString
                     # REQUIRED
                     ips = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 shouldBypassProxy = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTarget operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationReplication</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationReplication</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Replication' API domain: CreatePair, DeletePair, DisablePause, EnablePause, UpdateNetworkThrottleBypass, or UpdateTarget.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationReplication creates a new mutation object for operations in the 'Replication' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Replication' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreatePair, DeletePair, DisablePause, EnablePause, UpdateNetworkThrottleBypass, or UpdateTarget. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationReplication -CreatePair).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationReplication -CreatePair).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationReplication</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreatePair</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeletePair</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DisablePause</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EnablePause</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateNetworkThrottleBypass</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: CreatePair
              
             $query = New-RscMutationReplication -CreatePair
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 sourceGateway = @{
                     # REQUIRED
                     address = $someString
                     # REQUIRED
                     ports = @(
                         $someInt
                     )
                 }
                 # OPTIONAL
                 targetGateway = @{
                     # REQUIRED
                     address = $someString
                     # REQUIRED
                     ports = @(
                         $someInt
                     )
                 }
                 # OPTIONAL
                 targetNetworkInterface = @{
                     # OPTIONAL
                     type = $someReplicationInterfaceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationInterfaceType]) for enum values.
                 }
                 # OPTIONAL
                 networkInterface = @{
                     # OPTIONAL
                     targetInterfaceName = $someString
                     # OPTIONAL
                     sourceInterfaceName = $someString
                 }
                 # REQUIRED
                 sourceClusterUuid = $someString
                 # REQUIRED
                 targetClusterUuid = $someString
                 # REQUIRED
                 setupType = $someReplicationSetupType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationSetupType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreatePair operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: DeletePair
              
             $query = New-RscMutationReplication -DeletePair
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 forceDelete = $someBoolean
                 # REQUIRED
                 sourceClusterUuid = $someString
                 # REQUIRED
                 targetClusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeletePair operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: DisablePause
              
             $query = New-RscMutationReplication -DisablePause
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 disablePerLocationPause = @{
                     # REQUIRED
                     shouldSkipOldSnapshots = $someBoolean
                     # REQUIRED
                     sourceClusterUuids = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DisablePause operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: EnablePause
              
             $query = New-RscMutationReplication -EnablePause
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 enablePerLocationPause = @{
                     # OPTIONAL
                     shouldPauseImmediately = $someBoolean
                     # REQUIRED
                     shouldCancelImmediately = $someBoolean
                     # REQUIRED
                     sourceClusterUuids = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnablePause operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: UpdateNetworkThrottleBypass
              
             $query = New-RscMutationReplication -UpdateNetworkThrottleBypass
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     shouldBypassReplicationThrottle = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateNetworkThrottleBypass operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: UpdateTarget
              
             $query = New-RscMutationReplication -UpdateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 sourceGateway = @{
                     # REQUIRED
                     address = $someString
                     # REQUIRED
                     ports = @(
                         $someInt
                     )
                 }
                 # OPTIONAL
                 targetGateway = @{
                     # REQUIRED
                     address = $someString
                     # REQUIRED
                     ports = @(
                         $someInt
                     )
                 }
                 # OPTIONAL
                 targetNetworkInterface = @{
                     # OPTIONAL
                     type = $someReplicationInterfaceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationInterfaceType]) for enum values.
                 }
                 # OPTIONAL
                 networkInterface = @{
                     # OPTIONAL
                     targetInterfaceName = $someString
                     # OPTIONAL
                     sourceInterfaceName = $someString
                 }
                 # REQUIRED
                 sourceClusterUuid = $someString
                 # REQUIRED
                 targetClusterUuid = $someString
                 # REQUIRED
                 setupType = $someReplicationSetupType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationSetupType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTarget operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationReport</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationReport</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 10 operations in the 'Report' API domain: CreateCustom, CreateScheduled, DeleteCustom, DeleteScheduledReport, SendPdf, SendScheduledReportAsync, StartClusterMigrationJob, UpdateCustom, UpdateDatabaseLogingPropertiesForCluster, or UpdateScheduledReport.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationReport creates a new mutation object for operations in the 'Report' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 10 operations in the 'Report' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateCustom, CreateScheduled, DeleteCustom, DeleteScheduledReport, SendPdf, SendScheduledReportAsync, StartClusterMigrationJob, UpdateCustom, UpdateDatabaseLogingPropertiesForCluster, or UpdateScheduledReport. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationReport -CreateCustom).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationReport -CreateCustom).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationReport</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateCustom</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateScheduled</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCustom</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteScheduledReport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SendPdf</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SendScheduledReportAsync</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartClusterMigrationJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateCustom</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateDatabaseLogingPropertiesForCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateScheduledReport</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: CreateCustom
              
             $query = New-RscMutationReport -CreateCustom
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                 # OPTIONAL
                 charts = @(
                     @{
                         # REQUIRED
                         name = $someString
                         # REQUIRED
                         focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                         # OPTIONAL
                         groupBy = @(
                             $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                         )
                     }
                 )
                 # OPTIONAL
                 tables = @(
                     @{
                         # REQUIRED
                         name = $someString
                         # REQUIRED
                         focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                         # OPTIONAL
                         groupBy = @(
                             $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                         )
                         # REQUIRED
                         selectedColumns = @(
                             $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values.
                         )
                         # OPTIONAL
                         sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values.
                         # OPTIONAL
                         sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
                     }
                 )
                 # REQUIRED
                 filters = @{
                     # OPTIONAL
                     activityObjectType = @(
                         $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     objectType = @(
                         $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     excludedObjectTypes = @(
                         $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     lastActivityStatus = @(
                         $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     lastActivityType = @(
                         $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     slaDomainId = @(
                         $someString
                     )
                     # OPTIONAL
                     clusterType = @(
                         $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     clusterId = @(
                         $someString
                     )
                     # OPTIONAL
                     timeRange = @{
                         # OPTIONAL
                         relativeTimeRange = @{
                             # REQUIRED
                             magnitude = $someInt
                             # REQUIRED
                             unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values.
                         }
                         # OPTIONAL
                         absoluteTimeRange = @{
                             # REQUIRED
                             start = $someDateTime
                             # REQUIRED
                             end = $someDateTime
                         }
                     }
                     # OPTIONAL
                     slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                     # OPTIONAL
                     orgId = @(
                         $someString
                     )
                     # OPTIONAL
                     managedId = @(
                         $someString
                     )
                     # OPTIONAL
                     isAnomaly = $someBoolean
                     # OPTIONAL
                     searchTerm = $someString
                     # OPTIONAL
                     complianceStatus = @(
                         $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     protectionStatus = @(
                         $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     failoverStatus = @(
                         $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values.
                     # OPTIONAL
                     source = @(
                         $someString
                     )
                     # OPTIONAL
                     targetSite = @(
                         $someString
                     )
                     # OPTIONAL
                     userAuditObjectType = @(
                         $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     userAuditType = @(
                         $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     userAuditStatus = @(
                         $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values.
                     )
                     # OPTIONAL
                     replicationSource = @(
                         $someString
                     )
                     # OPTIONAL
                     clusterLocation = @(
                         $someString
                     )
                     # OPTIONAL
                     taskCategory = @(
                         $someString
                     )
                     # OPTIONAL
                     taskStatus = @(
                         $someString
                     )
                     # OPTIONAL
                     taskType = @(
                         $someString
                     )
                     # OPTIONAL
                     policyId = @(
                         $someString
                     )
                     # OPTIONAL
                     sonarObjectTypes = @(
                         $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     shouldApplyWhitelists = $someBoolean
                     # OPTIONAL
                     date = $someDateTime
                 }
                 # OPTIONAL
                 isHidden = $someBoolean
                 # OPTIONAL
                 isReadOnly = $someBoolean
             }
             # OPTIONAL
             $query.Var.reportRoom = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateCustomReportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateCustom operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: CreateScheduled
              
             $query = New-RscMutationReport -CreateScheduled
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 reportId = $someInt
                 # REQUIRED
                 title = $someString
                 # OPTIONAL
                 dailyTime = $someDateTime
                 # OPTIONAL
                 weeklyTime = $someDateTime
                 # OPTIONAL
                 monthlyDate = $someInt
                 # OPTIONAL
                 monthlyTime = $someDateTime
                 # REQUIRED
                 rubrikRecipientUserIds = @(
                     $someString
                 )
                 # REQUIRED
                 nonRubrikRecipientEmails = @(
                     $someString
                 )
                 # OPTIONAL
                 updateCreator = $someBoolean
                 # OPTIONAL
                 timeZone = $someString
                 # OPTIONAL
                 weeklyDays = @(
                     $someWeekDay # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WeekDay]) for enum values.
                 )
                 # OPTIONAL
                 attachmentTypes = @(
                     $someReportAttachmentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportAttachmentType]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateScheduledReportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateScheduled operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: DeleteCustom
              
             $query = New-RscMutationReport -DeleteCustom
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCustom operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: DeleteScheduledReport
              
             $query = New-RscMutationReport -DeleteScheduledReport
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
                 # OPTIONAL
                 reportId = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteScheduledReport operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: SendPdf
              
             $query = New-RscMutationReport -SendPdf
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 rubrikRecipientUserIds = @(
                     $someString
                 )
                 # REQUIRED
                 nonRubrikRecipientEmailIds = @(
                     $someString
                 )
                 # REQUIRED
                 password = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SendPdfReportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SendPdf operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: SendScheduledReportAsync
              
             $query = New-RscMutationReport -SendScheduledReportAsync
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 reportId = $someInt
                 # OPTIONAL
                 rubrikUserIds = @(
                     $someString
                 )
                 # OPTIONAL
                 nonRubrikUserEmails = @(
                     $someString
                 )
                 # OPTIONAL
                 attachmentTypes = @(
                     $someReportAttachmentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportAttachmentType]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncDownloadReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SendScheduledReportAsync operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: StartClusterMigrationJob
              
             $query = New-RscMutationReport -StartClusterMigrationJob
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterUuid = $someString
                 # OPTIONAL
                 shouldDeleteCdmSchedules = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StartClusterReportMigrationJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartClusterMigrationJob operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: UpdateCustom
              
             $query = New-RscMutationReport -UpdateCustom
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     name = $someString
                     # REQUIRED
                     focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                     # OPTIONAL
                     charts = @(
                         @{
                             # REQUIRED
                             name = $someString
                             # REQUIRED
                             focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                             # OPTIONAL
                             groupBy = @(
                                 $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                             )
                         }
                     )
                     # OPTIONAL
                     tables = @(
                         @{
                             # REQUIRED
                             name = $someString
                             # REQUIRED
                             focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values.
                             # OPTIONAL
                             groupBy = @(
                                 $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values.
                             )
                             # REQUIRED
                             selectedColumns = @(
                                 $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values.
                             )
                             # OPTIONAL
                             sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values.
                             # OPTIONAL
                             sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
                         }
                     )
                     # REQUIRED
                     filters = @{
                         # OPTIONAL
                         activityObjectType = @(
                             $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         objectType = @(
                             $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         excludedObjectTypes = @(
                             $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         lastActivityStatus = @(
                             $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         lastActivityType = @(
                             $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         slaDomainId = @(
                             $someString
                         )
                         # OPTIONAL
                         clusterType = @(
                             $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         clusterId = @(
                             $someString
                         )
                         # OPTIONAL
                         timeRange = @{
                             # OPTIONAL
                             relativeTimeRange = @{
                                 # REQUIRED
                                 magnitude = $someInt
                                 # REQUIRED
                                 unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values.
                             }
                             # OPTIONAL
                             absoluteTimeRange = @{
                                 # REQUIRED
                                 start = $someDateTime
                                 # REQUIRED
                                 end = $someDateTime
                             }
                         }
                         # OPTIONAL
                         slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                         # OPTIONAL
                         orgId = @(
                             $someString
                         )
                         # OPTIONAL
                         managedId = @(
                             $someString
                         )
                         # OPTIONAL
                         isAnomaly = $someBoolean
                         # OPTIONAL
                         searchTerm = $someString
                         # OPTIONAL
                         complianceStatus = @(
                             $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         protectionStatus = @(
                             $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         failoverStatus = @(
                             $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values.
                         # OPTIONAL
                         source = @(
                             $someString
                         )
                         # OPTIONAL
                         targetSite = @(
                             $someString
                         )
                         # OPTIONAL
                         userAuditObjectType = @(
                             $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         userAuditType = @(
                             $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         userAuditStatus = @(
                             $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values.
                         )
                         # OPTIONAL
                         replicationSource = @(
                             $someString
                         )
                         # OPTIONAL
                         clusterLocation = @(
                             $someString
                         )
                         # OPTIONAL
                         taskCategory = @(
                             $someString
                         )
                         # OPTIONAL
                         taskStatus = @(
                             $someString
                         )
                         # OPTIONAL
                         taskType = @(
                             $someString
                         )
                         # OPTIONAL
                         policyId = @(
                             $someString
                         )
                         # OPTIONAL
                         sonarObjectTypes = @(
                             $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         shouldApplyWhitelists = $someBoolean
                         # OPTIONAL
                         date = $someDateTime
                     }
                     # OPTIONAL
                     isHidden = $someBoolean
                     # OPTIONAL
                     isReadOnly = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateCustomReportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateCustom operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: UpdateDatabaseLogingPropertiesForCluster
              
             $query = New-RscMutationReport -UpdateDatabaseLogingPropertiesForCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 properties = @{
                     # OPTIONAL
                     enableDelayNotification = $someBoolean
                     # OPTIONAL
                     logDelayThresholdInMin = $someInt64
                     # OPTIONAL
                     logDelayNotificationFrequencyInMin = $someInt64
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DbLogReportProperties</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateDatabaseLogingPropertiesForCluster operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: UpdateScheduledReport
              
             $query = New-RscMutationReport -UpdateScheduledReport
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     reportId = $someInt
                     # REQUIRED
                     title = $someString
                     # OPTIONAL
                     dailyTime = $someDateTime
                     # OPTIONAL
                     weeklyTime = $someDateTime
                     # OPTIONAL
                     monthlyDate = $someInt
                     # OPTIONAL
                     monthlyTime = $someDateTime
                     # REQUIRED
                     rubrikRecipientUserIds = @(
                         $someString
                     )
                     # REQUIRED
                     nonRubrikRecipientEmails = @(
                         $someString
                     )
                     # OPTIONAL
                     timeZone = $someString
                     # OPTIONAL
                     updateCreator = $someBoolean
                     # OPTIONAL
                     weeklyDays = @(
                         $someWeekDay # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WeekDay]) for enum values.
                     )
                     # OPTIONAL
                     attachmentTypes = @(
                         $someReportAttachmentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportAttachmentType]) for enum values.
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateScheduledReportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateScheduledReport operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationSapHana</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationSapHana</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'SAP HANA' API domain: AddSystem, ConfigureRestore, CreateOnDemandBackup, CreateOnDemandStorageSnapshot, CreateSystemRefresh, DeleteDbSnapshot, DeleteSystem, ExpireDownloadedSnapshots, PatchSystem, RestoreSystemStorage, or UnconfigureRestore.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationSapHana creates a new mutation object for operations in the 'SAP HANA' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'SAP HANA' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddSystem, ConfigureRestore, CreateOnDemandBackup, CreateOnDemandStorageSnapshot, CreateSystemRefresh, DeleteDbSnapshot, DeleteSystem, ExpireDownloadedSnapshots, PatchSystem, RestoreSystemStorage, or UnconfigureRestore. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSapHana -AddSystem).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSapHana -AddSystem).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationSapHana</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddSystem</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ConfigureRestore</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOnDemandBackup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateOnDemandStorageSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateSystemRefresh</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteDbSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSystem</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExpireDownloadedSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PatchSystem</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreSystemStorage</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UnconfigureRestore</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: AddSystem
              
             $query = New-RscMutationSapHana -AddSystem
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 sapHanaSystem = @{
                     # OPTIONAL
                     azureFeatureId = $someString
                     # OPTIONAL
                     authTypeSpec = @{
                         # REQUIRED
                         authType = $someSapHanaSystemAuthTypeSpecAuthType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSystemAuthTypeSpecAuthType]) for enum values.
                     }
                     # OPTIONAL
                     dataPathSpec = @{
                         # OPTIONAL
                         dataPathType = $someSapHanaDataPathType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaDataPathType]) for enum values.
                     }
                     # REQUIRED
                     hostIds = @(
                         $someString
                     )
                     # REQUIRED
                     instanceNumber = $someString
                     # REQUIRED
                     password = $someString
                     # REQUIRED
                     sid = $someString
                     # OPTIONAL
                     sslInfo = @{
                         # OPTIONAL
                         cryptoLibPath = $someString
                         # OPTIONAL
                         hostNameInCertificate = $someString
                         # OPTIONAL
                         shouldEncrypt = $someBoolean
                         # OPTIONAL
                         shouldValidateCertificate = $someBoolean
                         # OPTIONAL
                         trustStorePath = $someString
                         # REQUIRED
                         encryptionProvider = $someSapHanaSslInfoEncryptionProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSslInfoEncryptionProvider]) for enum values.
                         # REQUIRED
                         keyStorePath = $someString
                     }
                     # REQUIRED
                     username = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddSapHanaSystemReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddSystem operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: ConfigureRestore
              
             $query = New-RscMutationSapHana -ConfigureRestore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 sourceConfig = @{
                     # OPTIONAL
                     snappableId = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ConfigureRestore operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: CreateOnDemandBackup
              
             $query = New-RscMutationSapHana -CreateOnDemandBackup
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOnDemandBackup operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: CreateOnDemandStorageSnapshot
              
             $query = New-RscMutationSapHana -CreateOnDemandStorageSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateOnDemandStorageSnapshot operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: CreateSystemRefresh
              
             $query = New-RscMutationSapHana -CreateSystemRefresh
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateSystemRefresh operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: DeleteDbSnapshot
              
             $query = New-RscMutationSapHana -DeleteDbSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteDbSnapshot operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: DeleteSystem
              
             $query = New-RscMutationSapHana -DeleteSystem
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSystem operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: ExpireDownloadedSnapshots
              
             $query = New-RscMutationSapHana -ExpireDownloadedSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # OPTIONAL
                 shouldExpireLogsOnly = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExpireDownloadedSnapshots operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: PatchSystem
              
             $query = New-RscMutationSapHana -PatchSystem
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 updateProperties = @{
                     # OPTIONAL
                     configuredSlaDomainId = $someString
                     # OPTIONAL
                     hostIds = @(
                         $someString
                     )
                     # OPTIONAL
                     instanceNumber = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     sid = $someString
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     azureFeatureId = $someString
                     # OPTIONAL
                     authTypeSpec = @{
                         # REQUIRED
                         authType = $someSapHanaSystemAuthTypeSpecAuthType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSystemAuthTypeSpecAuthType]) for enum values.
                     }
                     # OPTIONAL
                     sslInfo = @{
                         # OPTIONAL
                         cryptoLibPath = $someString
                         # OPTIONAL
                         hostNameInCertificate = $someString
                         # OPTIONAL
                         shouldEncrypt = $someBoolean
                         # OPTIONAL
                         shouldValidateCertificate = $someBoolean
                         # OPTIONAL
                         trustStorePath = $someString
                         # REQUIRED
                         encryptionProvider = $someSapHanaSslInfoEncryptionProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSslInfoEncryptionProvider]) for enum values.
                         # REQUIRED
                         keyStorePath = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PatchSapHanaSystemReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PatchSystem operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: RestoreSystemStorage
              
             $query = New-RscMutationSapHana -RestoreSystemStorage
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshotId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreSystemStorage operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: UnconfigureRestore
              
             $query = New-RscMutationSapHana -UnconfigureRestore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the UnconfigureRestore operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationServiceAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationServiceAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Service Account' API domain: Create, Delete, Rotate, or Update.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationServiceAccount creates a new mutation object for operations in the 'Service Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Service Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Create, Delete, Rotate, or Update. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationServiceAccount -Create).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationServiceAccount -Create).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationServiceAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Create</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Delete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Rotate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Update</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ServiceAccount
             # API Operation: Create
              
             $query = New-RscMutationServiceAccount -Create
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # REQUIRED
                 roleIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateServiceAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Create operation of the 'Service Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ServiceAccount
             # API Operation: Delete
              
             $query = New-RscMutationServiceAccount -Delete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 ids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the Delete operation of the 'Service Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ServiceAccount
             # API Operation: Rotate
              
             $query = New-RscMutationServiceAccount -Rotate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RotateServiceAccountSecretReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Rotate operation of the 'Service Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ServiceAccount
             # API Operation: Update
              
             $query = New-RscMutationServiceAccount -Update
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 description = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateServiceAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update operation of the 'Service Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationSharepoint</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationSharepoint</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'Sharepoint' API domain: ['ExcludeObjectsFromProtection'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationSharepoint creates a new mutation object for operations in the 'Sharepoint' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'Sharepoint' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['ExcludeObjectsFromProtection']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSharepoint -ExcludeObjectsFromProtection).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSharepoint -ExcludeObjectsFromProtection).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationSharepoint</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ExcludeObjectsFromProtection</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: ExcludeObjectsFromProtection
              
             $query = New-RscMutationSharepoint -ExcludeObjectsFromProtection
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 exclusions = @(
                     @{
                         # REQUIRED
                         siteFid = $someString
                         # REQUIRED
                         excludedObjects = @(
                             @{
                                 # REQUIRED
                                 fid = $someString
                                 # REQUIRED
                                 name = $someString
                                 # REQUIRED
                                 url = $someString
                                 # REQUIRED
                                 objectType = $someSharePointDescendantType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointDescendantType]) for enum values.
                             }
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExcludeObjectsFromProtection operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationSla</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationSla</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'SLA' API domain: Assign, AssignRetentionToSnappables, AssignRetentionToSnapshots, AssignsForSnappableHierarchies, CreateGlobal, DeleteGlobal, ExportManagedVolumeSnapshot, GetPendingAssignments, Pause, UpdateGlobal, or Upgrades.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationSla creates a new mutation object for operations in the 'SLA' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'SLA' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Assign, AssignRetentionToSnappables, AssignRetentionToSnapshots, AssignsForSnappableHierarchies, CreateGlobal, DeleteGlobal, ExportManagedVolumeSnapshot, GetPendingAssignments, Pause, UpdateGlobal, or Upgrades. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSla -Assign).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSla -Assign).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationSla</maml:name>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters />
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: Assign
              
             $query = New-RscMutationSla -Assign
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 slaDomainAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values.
                 # OPTIONAL
                 slaOptionalId = $someString
                 # REQUIRED
                 objectIds = @(
                     $someString
                 )
                 # OPTIONAL
                 applicableWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                 # OPTIONAL
                 shouldApplyToExistingSnapshots = $someBoolean
                 # OPTIONAL
                 shouldApplyToNonPolicySnapshots = $someBoolean
                 # OPTIONAL
                 existingSnapshotRetention = $someGlobalExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalExistingSnapshotRetention]) for enum values.
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SlaAssignResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the Assign operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: AssignRetentionToSnappables
              
             $query = New-RscMutationSla -AssignRetentionToSnappables
              
             # OPTIONAL
             $query.Var.globalSlaOptionalFid = $someString
             # REQUIRED
             $query.Var.globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values.
             # REQUIRED
             $query.Var.objectIds = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.applicableSnappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
             # OPTIONAL
             $query.Var.shouldApplyToNonPolicySnapshots = $someBoolean
             # OPTIONAL
             $query.Var.userNote = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SlaAssignResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignRetentionToSnappables operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: AssignRetentionToSnapshots
              
             $query = New-RscMutationSla -AssignRetentionToSnapshots
              
             # OPTIONAL
             $query.Var.globalSlaOptionalFid = $someString
             # REQUIRED
             $query.Var.globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values.
             # REQUIRED
             $query.Var.snapshotFids = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.userNote = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SlaAssignResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignRetentionToSnapshots operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: AssignsForSnappableHierarchies
              
             $query = New-RscMutationSla -AssignsForSnappableHierarchies
              
             # OPTIONAL
             $query.Var.globalSlaOptionalFid = $someString
             # REQUIRED
             $query.Var.globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values.
             # REQUIRED
             $query.Var.objectIds = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.applicableSnappableTypes = @(
                 $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
             )
             # OPTIONAL
             $query.Var.shouldApplyToExistingSnapshots = $someBoolean
             # OPTIONAL
             $query.Var.shouldApplyToNonPolicySnapshots = $someBoolean
             # OPTIONAL
             $query.Var.globalExistingSnapshotRetention = $someGlobalExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalExistingSnapshotRetention]) for enum values.
             # OPTIONAL
             $query.Var.userNote = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;SlaAssignResult&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignsForSnappableHierarchies operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationSmb</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationSmb</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'SMB' API domain: AddAndJoinDomain, DeleteDomain, JoinDomain, or PutConfiguration.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationSmb creates a new mutation object for operations in the 'SMB' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'SMB' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddAndJoinDomain, DeleteDomain, JoinDomain, or PutConfiguration. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSmb -AddAndJoinDomain).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSmb -AddAndJoinDomain).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationSmb</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddAndJoinDomain</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteDomain</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">JoinDomain</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PutConfiguration</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Smb
             # API Operation: AddAndJoinDomain
              
             $query = New-RscMutationSmb -AddAndJoinDomain
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     name = $someString
                     # OPTIONAL
                     smbDomainJoinRequest = @{
                         # OPTIONAL
                         computerAccountName = $someString
                         # OPTIONAL
                         creationOrganizationUnit = $someString
                         # OPTIONAL
                         domainControllers = @(
                             $someString
                         )
                         # OPTIONAL
                         isStickySmbService = $someBoolean
                         # OPTIONAL
                         orgNetworkId = $someString
                         # REQUIRED
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddAndJoinSmbDomainReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AddAndJoinDomain operation of the 'SMB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Smb
             # API Operation: DeleteDomain
              
             $query = New-RscMutationSmb -DeleteDomain
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 domainName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteDomain operation of the 'SMB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Smb
             # API Operation: JoinDomain
              
             $query = New-RscMutationSmb -JoinDomain
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     computerAccountName = $someString
                     # OPTIONAL
                     creationOrganizationUnit = $someString
                     # OPTIONAL
                     domainControllers = @(
                         $someString
                     )
                     # OPTIONAL
                     isStickySmbService = $someBoolean
                     # OPTIONAL
                     orgNetworkId = $someString
                     # REQUIRED
                     password = $someString
                     # REQUIRED
                     username = $someString
                 }
                 # REQUIRED
                 domainName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the JoinDomain operation of the 'SMB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Smb
             # API Operation: PutConfiguration
              
             $query = New-RscMutationSmb -PutConfiguration
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     enforceSmbSecurity = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PutSmbConfigurationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PutConfiguration operation of the 'SMB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationSnapshot</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationSnapshot</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 18 operations in the 'Snapshot' API domain: BatchQuarantine, BatchReleaseFromQuarantine, BulkTierExistings, CreateDomainController, CreateDownloadForVolumeGroup, CreateFileset, DeleteCloudWorkloadSnapshot, DeleteFilesetSnapshots, DeleteUnmanageds, DeletesOfUnmanagedObjects, FilesetDownloadFiles, FilesetExportFiles, RestoreDomainController, RestoreVolumeGroupFiles, StartEc2InstanceExportJob, StartRecoverS3Job, TakeOnDemand, or UploadDatabaseToBlobstore.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationSnapshot creates a new mutation object for operations in the 'Snapshot' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 18 operations in the 'Snapshot' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BatchQuarantine, BatchReleaseFromQuarantine, BulkTierExistings, CreateDomainController, CreateDownloadForVolumeGroup, CreateFileset, DeleteCloudWorkloadSnapshot, DeleteFilesetSnapshots, DeleteUnmanageds, DeletesOfUnmanagedObjects, FilesetDownloadFiles, FilesetExportFiles, RestoreDomainController, RestoreVolumeGroupFiles, StartEc2InstanceExportJob, StartRecoverS3Job, TakeOnDemand, or UploadDatabaseToBlobstore. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSnapshot -BatchQuarantine).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSnapshot -BatchQuarantine).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationSnapshot</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BatchQuarantine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchReleaseFromQuarantine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BulkTierExistings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateDomainController</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateDownloadForVolumeGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateFileset</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteCloudWorkloadSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteFilesetSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteUnmanageds</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeletesOfUnmanagedObjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FilesetDownloadFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FilesetExportFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreDomainController</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RestoreVolumeGroupFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartEc2InstanceExportJob</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartRecoverS3Job</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TakeOnDemand</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UploadDatabaseToBlobstore</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: BatchQuarantine
              
             $query = New-RscMutationSnapshot -BatchQuarantine
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 quarantineSpecs = @(
                     @{
                         # REQUIRED
                         snapshotId = $someString
                         # REQUIRED
                         filesDetails = @(
                             @{
                                 # REQUIRED
                                 fileName = $someString
                             }
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchQuarantineSnapshotReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchQuarantine operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: BatchReleaseFromQuarantine
              
             $query = New-RscMutationSnapshot -BatchReleaseFromQuarantine
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 quarantineSpecs = @(
                     @{
                         # REQUIRED
                         snapshotId = $someString
                         # REQUIRED
                         filesDetails = @(
                             @{
                                 # REQUIRED
                                 fileName = $someString
                             }
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchReleaseFromQuarantineSnapshotReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchReleaseFromQuarantine operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: BulkTierExistings
              
             $query = New-RscMutationSnapshot -BulkTierExistings
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 objectTierInfo = @{
                     # OPTIONAL
                     locationId = $someString
                     # REQUIRED
                     objectIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkTierExistings operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: CreateDomainController
              
             $query = New-RscMutationSnapshot -CreateDomainController
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateDomainController operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: CreateDownloadForVolumeGroup
              
             $query = New-RscMutationSnapshot -CreateDownloadForVolumeGroup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateDownloadForVolumeGroup operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: CreateFileset
              
             $query = New-RscMutationSnapshot -CreateFileset
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateFileset operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: DeleteCloudWorkloadSnapshot
              
             $query = New-RscMutationSnapshot -DeleteCloudWorkloadSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteCloudWorkloadSnapshot operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: DeleteFilesetSnapshots
              
             $query = New-RscMutationSnapshot -DeleteFilesetSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResponseSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteFilesetSnapshots operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: DeleteUnmanageds
              
             $query = New-RscMutationSnapshot -DeleteUnmanageds
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteUnmanageds operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: DeletesOfUnmanagedObjects
              
             $query = New-RscMutationSnapshot -DeletesOfUnmanagedObjects
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 objectIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeletesOfUnmanagedObjects operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: FilesetDownloadFiles
              
             $query = New-RscMutationSnapshot -FilesetDownloadFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 nextSnapshotFid = $someString
                 # OPTIONAL
                 userNote = $someString
                 # OPTIONAL
                 zipPassword = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     zipPassword = $someString
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                     # REQUIRED
                     sourceDirs = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 deltaTypeFilter = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the FilesetDownloadFiles operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: FilesetExportFiles
              
             $query = New-RscMutationSnapshot -FilesetExportFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 nextSnapshotFid = $someString
                 # OPTIONAL
                 deltaTypeFilter = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     ignoreErrors = $someBoolean
                     # OPTIONAL
                     shareId = $someString
                     # OPTIONAL
                     excludePaths = @(
                         $someString
                     )
                     # OPTIONAL
                     shouldRecreateDirectoryStructure = $someBoolean
                     # REQUIRED
                     exportPathPairs = @(
                         @{
                             # OPTIONAL
                             exportPathPair = @{
                                 # REQUIRED
                                 dstPath = $someString
                                 # REQUIRED
                                 srcPath = $someString
                             }
                         }
                     )
                 }
                 # REQUIRED
                 shareType = $someShareTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ShareTypeEnum]) for enum values.
                 # REQUIRED
                 osType = $someGuestOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GuestOsType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the FilesetExportFiles operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: RestoreDomainController
              
             $query = New-RscMutationSnapshot -RestoreDomainController
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     snapshotForAuthoritativeRestore = $someString
                     # REQUIRED
                     domainControllerRestoreConfigs = @(
                         @{
                             # OPTIONAL
                             hostId = $someString
                             # REQUIRED
                             snapshotId = $someString
                         }
                     )
                     # REQUIRED
                     shouldPerformAuthoritativeAdObjectsRestore = $someBoolean
                     # REQUIRED
                     shouldPerformAuthoritativeSysvolRestore = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreDomainController operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: RestoreVolumeGroupFiles
              
             $query = New-RscMutationSnapshot -RestoreVolumeGroupFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 nextSnapshotFid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     targetHostId = $someString
                     # OPTIONAL
                     shouldIgnoreError = $someBoolean
                     # REQUIRED
                     restoreConfigs = @(
                         @{
                             # REQUIRED
                             path = $someString
                             # REQUIRED
                             restorePath = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 deltaTypeFilter = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreVolumeGroupFiles operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: StartEc2InstanceExportJob
              
             $query = New-RscMutationSnapshot -StartEc2InstanceExportJob
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 destinationAwsAccountRubrikId = $someString
                 # REQUIRED
                 instanceType = $someAwsNativeEc2InstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEc2InstanceType]) for enum values.
                 # REQUIRED
                 instanceName = $someString
                 # REQUIRED
                 securityGroupIds = @(
                     $someString
                 )
                 # REQUIRED
                 subnetId = $someString
                 # REQUIRED
                 destinationRegionId = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
                 # REQUIRED
                 shouldCopyTags = $someBoolean
                 # OPTIONAL
                 kmsKeyId = $someString
                 # OPTIONAL
                 sshKeyPairName = $someString
                 # OPTIONAL
                 exportInstanceInPoweredOffState = $someBoolean
                 # OPTIONAL
                 snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values.
                 # OPTIONAL
                 amiId = $someString
                 # OPTIONAL
                 iamInstanceProfileArn = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartEc2InstanceExportJob operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: StartRecoverS3Job
              
             $query = New-RscMutationSnapshot -StartRecoverS3Job
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadId = $someString
                 # OPTIONAL
                 snapshotId = $someString
                 # OPTIONAL
                 restoreDate = $someDateTime
                 # REQUIRED
                 destinationBucketArn = $someString
                 # REQUIRED
                 shouldRecoverFullBucket = $someBoolean
                 # REQUIRED
                 objectKeys = @(
                     $someString
                 )
                 # OPTIONAL
                 targetAwsAccountRubrikId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartRecoverS3Job operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: TakeOnDemand
              
             $query = New-RscMutationSnapshot -TakeOnDemand
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 workloadIds = @(
                     $someString
                 )
                 # REQUIRED
                 slaId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TakeOnDemandSnapshotReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the TakeOnDemand operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: UploadDatabaseToBlobstore
              
             $query = New-RscMutationSnapshot -UploadDatabaseToBlobstore
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # OPTIONAL
                 targetStorageAccountConfigInput = @{
                     # REQUIRED
                     subscriptionCloudAccountId = $someString
                     # REQUIRED
                     resourceGroupName = $someString
                     # REQUIRED
                     storageAccountName = $someString
                     # OPTIONAL
                     tags = @{
                         # REQUIRED
                         tagList = @(
                             @{
                                 # REQUIRED
                                 key = $someString
                                 # REQUIRED
                                 value = $someString
                             }
                         )
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the UploadDatabaseToBlobstore operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationSnmp</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationSnmp</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'SNMP' API domain: ['UpdateConfig'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationSnmp creates a new mutation object for operations in the 'SNMP' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'SNMP' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['UpdateConfig']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSnmp -UpdateConfig).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationSnmp -UpdateConfig).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationSnmp</maml:name>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters />
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationStorageArray</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationStorageArray</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Storage Arrays' API domain: Add, Delete, Refresh, or Update.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationStorageArray creates a new mutation object for operations in the 'Storage Arrays' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Storage Arrays' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Add, Delete, Refresh, or Update. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationStorageArray -Add).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationStorageArray -Add).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationStorageArray</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Add</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Delete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Refresh</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Update</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: StorageArray
             # API Operation: Add
              
             $query = New-RscMutationStorageArray -Add
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 configs = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         definition = @{
                             # OPTIONAL
                             caCerts = $someString
                             # OPTIONAL
                             certificateId = $someString
                             # REQUIRED
                             arrayType = $someStorageArrayType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageArrayType]) for enum values.
                             # REQUIRED
                             hostname = $someString
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AddStorageArraysReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Add operation of the 'Storage Arrays' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: StorageArray
             # API Operation: Delete
              
             $query = New-RscMutationStorageArray -Delete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 inputs = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         id = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DeleteStorageArraysReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Delete operation of the 'Storage Arrays' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: StorageArray
             # API Operation: Refresh
              
             $query = New-RscMutationStorageArray -Refresh
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 inputs = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         id = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RefreshStorageArraysReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Refresh operation of the 'Storage Arrays' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: StorageArray
             # API Operation: Update
              
             $query = New-RscMutationStorageArray -Update
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 configs = @(
                     @{
                         # REQUIRED
                         clusterUuid = $someString
                         # REQUIRED
                         id = $someString
                         # REQUIRED
                         definition = @{
                             # OPTIONAL
                             caCerts = $someString
                             # OPTIONAL
                             certificateId = $someString
                             # REQUIRED
                             arrayType = $someStorageArrayType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageArrayType]) for enum values.
                             # REQUIRED
                             hostname = $someString
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateStorageArraysReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update operation of the 'Storage Arrays' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationSyslog</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationSyslog</command:noun>
      <maml:description>
        <maml:para>{{ Fill in the Synopsis }}</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>{{ Fill in the Description }}</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationSyslog</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AddExportRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteExportRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TestExportRule</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateExportRule</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS C:\&gt; {{ Add example code here }}</dev:code>
        <dev:remarks>
          <maml:para>{{ Add example description here }}</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationTape</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationTape</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 3 operations in the 'Tape' API domain: CreateReaderTarget, CreateTarget, or UpdateTarget.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationTape creates a new mutation object for operations in the 'Tape' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'Tape' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateReaderTarget, CreateTarget, or UpdateTarget. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationTape -CreateReaderTarget).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationTape -CreateReaderTarget).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationTape</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CreateReaderTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Tape
             # API Operation: CreateReaderTarget
              
             $query = New-RscMutationTape -CreateReaderTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 hostName = $someString
                 # REQUIRED
                 hostPort = $someInt
                 # REQUIRED
                 integralVolumeName = $someString
                 # REQUIRED
                 destinationFolderName = $someString
                 # REQUIRED
                 username = $someString
                 # REQUIRED
                 password = $someString
                 # REQUIRED
                 encryptionPassword = $someString
                 # REQUIRED
                 readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateReaderTarget operation of the 'Tape' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Tape
             # API Operation: CreateTarget
              
             $query = New-RscMutationTape -CreateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 hostName = $someString
                 # REQUIRED
                 hostPort = $someInt
                 # REQUIRED
                 integralVolumeName = $someString
                 # REQUIRED
                 destinationFolderName = $someString
                 # REQUIRED
                 username = $someString
                 # REQUIRED
                 password = $someString
                 # REQUIRED
                 encryptionPassword = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateTarget operation of the 'Tape' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Tape
             # API Operation: UpdateTarget
              
             $query = New-RscMutationTape -UpdateTarget
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 hostName = $someString
                 # OPTIONAL
                 hostPort = $someInt
                 # OPTIONAL
                 username = $someString
                 # OPTIONAL
                 password = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTarget operation of the 'Tape' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationThreat</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationThreat</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 3 operations in the 'Threat' API domain: CancelHunt, EnableMonitoring, or StartHunt.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationThreat creates a new mutation object for operations in the 'Threat' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'Threat' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CancelHunt, EnableMonitoring, or StartHunt. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationThreat -CancelHunt).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationThreat -CancelHunt).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationThreat</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CancelHunt</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EnableMonitoring</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StartHunt</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Threat
             # API Operation: CancelHunt
              
             $query = New-RscMutationThreat -CancelHunt
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 huntId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CancelHunt operation of the 'Threat' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Threat
             # API Operation: EnableMonitoring
              
             $query = New-RscMutationThreat -EnableMonitoring
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 status = @{
                     # REQUIRED
                     entityId = $someString
                     # REQUIRED
                     entityType = $someThreatMonitoringEnablementEntity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatMonitoringEnablementEntity]) for enum values.
                     # REQUIRED
                     enabled = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableMonitoring operation of the 'Threat' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Threat
             # API Operation: StartHunt
              
             $query = New-RscMutationThreat -StartHunt
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 notes = $someString
                 # OPTIONAL
                 fileScanCriteria = @{
                     # OPTIONAL
                     fileSizeLimits = @{
                         # OPTIONAL
                         maximumSizeInBytes = $someInt64
                         # OPTIONAL
                         minimumSizeInBytes = $someInt64
                     }
                     # OPTIONAL
                     fileTimeLimits = @{
                         # OPTIONAL
                         earliestCreationTime = $someDateTime
                         # OPTIONAL
                         earliestModificationTime = $someDateTime
                         # OPTIONAL
                         latestCreationTime = $someDateTime
                         # OPTIONAL
                         latestModificationTime = $someDateTime
                     }
                     # OPTIONAL
                     pathFilter = @{
                         # OPTIONAL
                         exceptions = @(
                             $someString
                         )
                         # OPTIONAL
                         excludes = @(
                             $someString
                         )
                         # OPTIONAL
                         includes = @(
                             $someString
                         )
                     }
                 }
                 # REQUIRED
                 indicatorsOfCompromise = @(
                     @{
                         # REQUIRED
                         iocKind = $someIndicatorOfCompromiseKind # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IndicatorOfCompromiseKind]) for enum values.
                         # REQUIRED
                         iocValue = $someString
                     }
                 )
                 # OPTIONAL
                 maxMatchesPerSnapshot = $someInt
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 objectFids = @(
                     $someString
                 )
                 # OPTIONAL
                 requestedMatchDetails = @{
                     # OPTIONAL
                     requestedHashTypes = @(
                         $someHashType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HashType]) for enum values.
                     )
                 }
                 # OPTIONAL
                 shouldTrustFilesystemTimeInfo = $someBoolean
                 # OPTIONAL
                 snapshotScanLimit = @{
                     # OPTIONAL
                     endTime = $someDateTime
                     # OPTIONAL
                     maxSnapshotsPerObject = $someInt
                     # OPTIONAL
                     startTime = $someDateTime
                     # OPTIONAL
                     snapshotsToScanPerObject = @(
                         @{
                             # REQUIRED
                             id = $someString
                             # REQUIRED
                             snapshots = @(
                                 $someString
                             )
                         }
                     )
                 }
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StartThreatHuntReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StartHunt operation of the 'Threat' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationVcenter</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationVcenter</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 7 operations in the 'VMware vSphere vCenter' API domain: Create, Delete, Refresh, Update, UpdateHotAddBandwidth, UpdateHotAddNetwork, or UpdateV2.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationVcenter creates a new mutation object for operations in the 'VMware vSphere vCenter' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 7 operations in the 'VMware vSphere vCenter' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Create, Delete, Refresh, Update, UpdateHotAddBandwidth, UpdateHotAddNetwork, or UpdateV2. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVcenter -Create).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVcenter -Create).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationVcenter</maml:name>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters />
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: Create
              
             $query = New-RscMutationVcenter -Create
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 vcenterDetail = @{
                     # OPTIONAL
                     caCerts = $someString
                     # OPTIONAL
                     shouldEnableHotAddProxyForOnPrem = $someBoolean
                     # OPTIONAL
                     isStandaloneHost = $someBoolean
                     # OPTIONAL
                     orgNetworkId = $someString
                     # OPTIONAL
                     conflictResolutionAuthz = $someVcenterConfigV2ConflictResolutionAuthz # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VcenterConfigV2ConflictResolutionAuthz]) for enum values.
                     # OPTIONAL
                     computeVisibilityFilter = @(
                         @{
                             # OPTIONAL
                             isVmwareMetroStorageCluster = $someBoolean
                             # REQUIRED
                             hostGroupFilter = @(
                                 $someString
                             )
                             # REQUIRED
                             id = $someString
                         }
                     )
                     # REQUIRED
                     hostname = $someString
                     # REQUIRED
                     password = $someString
                     # REQUIRED
                     username = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateVsphereVcenterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Create operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: Delete
              
             $query = New-RscMutationVcenter -Delete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the Delete operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: Refresh
              
             $query = New-RscMutationVcenter -Refresh
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 fid = $someString
                 # OPTIONAL
                 shouldDiagnose = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the Refresh operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationVmware</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationVmware</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'VMware' API domain: ['DownloadSnapshotFromLocation'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationVmware creates a new mutation object for operations in the 'VMware' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'VMware' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['DownloadSnapshotFromLocation']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVmware -DownloadSnapshotFromLocation).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVmware -DownloadSnapshotFromLocation).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationVmware</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshotFromLocation</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vmware
             # API Operation: DownloadSnapshotFromLocation
              
             $query = New-RscMutationVmware -DownloadSnapshotFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 downloadConfig = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshotFromLocation operation of the 'VMware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationVsphere</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationVsphere</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'VMware vSphere' API domain: BulkOnDemandSnapshot, CreateAdvancedTag, DeleteAdvancedTag, DeleteLiveMount, DownloadVirtualMachineFiles, ExportSnapshotToStandaloneHostV2, OnDemandSnapshot, SnapshotDownloadFilesFromLocation, SnapshotRestoreFilesFromLocation, UpdateAdvancedTag, or UpdateVmNew.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationVsphere creates a new mutation object for operations in the 'VMware vSphere' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'VMware vSphere' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkOnDemandSnapshot, CreateAdvancedTag, DeleteAdvancedTag, DeleteLiveMount, DownloadVirtualMachineFiles, ExportSnapshotToStandaloneHostV2, OnDemandSnapshot, SnapshotDownloadFilesFromLocation, SnapshotRestoreFilesFromLocation, UpdateAdvancedTag, or UpdateVmNew. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVsphere -BulkOnDemandSnapshot).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVsphere -BulkOnDemandSnapshot).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationVsphere</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkOnDemandSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CreateAdvancedTag</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteAdvancedTag</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteLiveMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadVirtualMachineFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportSnapshotToStandaloneHostV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OnDemandSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotDownloadFilesFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotRestoreFilesFromLocation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateAdvancedTag</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateVmNew</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: BulkOnDemandSnapshot
              
             $query = New-RscMutationVsphere -BulkOnDemandSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                     # REQUIRED
                     vms = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkOnDemandSnapshot operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: CreateAdvancedTag
              
             $query = New-RscMutationVsphere -CreateAdvancedTag
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 filterInfo = @{
                     # OPTIONAL
                     description = $someString
                     # REQUIRED
                     condition = $someString
                     # REQUIRED
                     name = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateVsphereAdvancedTagReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateAdvancedTag operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: DeleteAdvancedTag
              
             $query = New-RscMutationVsphere -DeleteAdvancedTag
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 filterId = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteAdvancedTag operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: DeleteLiveMount
              
             $query = New-RscMutationVsphere -DeleteLiveMount
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 force = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteLiveMount operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: DownloadVirtualMachineFiles
              
             $query = New-RscMutationVsphere -DownloadVirtualMachineFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     fileNamesToDownload = @(
                         $someString
                     )
                     # REQUIRED
                     vmId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadVirtualMachineFiles operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: ExportSnapshotToStandaloneHostV2
              
             $query = New-RscMutationVsphere -ExportSnapshotToStandaloneHostV2
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     datastoreName = $someString
                     # REQUIRED
                     hostIpAddress = $someString
                     # REQUIRED
                     hostPassword = $someString
                     # REQUIRED
                     hostUsername = $someString
                     # OPTIONAL
                     mountExportSnapshotJobCommonOptions = @{
                         # OPTIONAL
                         disableNetwork = $someBoolean
                         # OPTIONAL
                         keepMacAddresses = $someBoolean
                         # OPTIONAL
                         powerOn = $someBoolean
                         # OPTIONAL
                         removeNetworkDevices = $someBoolean
                         # OPTIONAL
                         vmName = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportSnapshotToStandaloneHostV2 operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: OnDemandSnapshot
              
             $query = New-RscMutationVsphere -OnDemandSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     slaId = $someString
                 }
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 userNote = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the OnDemandSnapshot operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: SnapshotDownloadFilesFromLocation
              
             $query = New-RscMutationVsphere -SnapshotDownloadFilesFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 snapshotFid = $someString
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     zipPassword = $someString
                     # OPTIONAL
                     legalHoldDownloadConfig = @{
                         # REQUIRED
                         isLegalHoldDownload = $someBoolean
                     }
                     # REQUIRED
                     paths = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotDownloadFilesFromLocation operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: SnapshotRestoreFilesFromLocation
              
             $query = New-RscMutationVsphere -SnapshotRestoreFilesFromLocation
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 snapshotFid = $someString
                 # REQUIRED
                 locationId = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     domainName = $someString
                     # OPTIONAL
                     ignoreErrors = $someBoolean
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     shouldSaveCredentials = $someBoolean
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     destObjectId = $someString
                     # OPTIONAL
                     shouldRestoreXAttrs = $someBoolean
                     # OPTIONAL
                     shouldUseAgent = $someBoolean
                     # OPTIONAL
                     guestCredentialId = $someString
                     # OPTIONAL
                     description = $someString
                     # OPTIONAL
                     shouldUseMountDisks = $someBoolean
                     # REQUIRED
                     restoreConfig = @(
                         @{
                             # OPTIONAL
                             restorePathPair = @{
                                 # OPTIONAL
                                 restorePath = $someString
                                 # REQUIRED
                                 path = $someString
                             }
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotRestoreFilesFromLocation operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: UpdateAdvancedTag
              
             $query = New-RscMutationVsphere -UpdateAdvancedTag
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 filterId = $someString
                 # REQUIRED
                 filterInfo = @{
                     # OPTIONAL
                     description = $someString
                     # REQUIRED
                     condition = $someString
                     # REQUIRED
                     name = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateVsphereAdvancedTagReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAdvancedTag operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: UpdateVmNew
              
             $query = New-RscMutationVsphere -UpdateVmNew
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 vmUpdateProperties = @{
                     # OPTIONAL
                     shouldRefreshCacheAfterUpdate = $someBoolean
                     # OPTIONAL
                     guestCredentialId = $someString
                     # OPTIONAL
                     guestCredential = @{
                         # OPTIONAL
                         domain = $someString
                         # OPTIONAL
                         description = $someString
                         # OPTIONAL
                         baseGuestCredential = @{
                             # REQUIRED
                             password = $someString
                             # REQUIRED
                             username = $someString
                         }
                     }
                     # OPTIONAL
                     virtualMachineUpdate = @{
                         # OPTIONAL
                         configuredSlaDomainId = $someString
                         # OPTIONAL
                         isArrayIntegrationEnabled = $someBoolean
                         # OPTIONAL
                         isVmPaused = $someBoolean
                         # OPTIONAL
                         maxNestedVsphereSnapshots = $someInt
                         # OPTIONAL
                         snapshotConsistencyMandate = $someVirtualMachineUpdateSnapshotConsistencyMandate # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineUpdateSnapshotConsistencyMandate]) for enum values.
                         # OPTIONAL
                         cloudInstantiationSpec = @{
                             # REQUIRED
                             imageRetentionInSeconds = $someInt64
                         }
                         # OPTIONAL
                         postBackupScript = @{
                             # REQUIRED
                             failureHandling = $someVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineScriptDetailFailureHandling]) for enum values.
                             # REQUIRED
                             scriptPath = $someString
                             # REQUIRED
                             timeoutMs = $someInt64
                         }
                         # OPTIONAL
                         postSnapScript = @{
                             # REQUIRED
                             failureHandling = $someVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineScriptDetailFailureHandling]) for enum values.
                             # REQUIRED
                             scriptPath = $someString
                             # REQUIRED
                             timeoutMs = $someInt64
                         }
                         # OPTIONAL
                         preBackupScript = @{
                             # REQUIRED
                             failureHandling = $someVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineScriptDetailFailureHandling]) for enum values.
                             # REQUIRED
                             scriptPath = $someString
                             # REQUIRED
                             timeoutMs = $someInt64
                         }
                         # OPTIONAL
                         throttlingSettings = @{
                             # OPTIONAL
                             cpuUtilizationThreshold = $someInt
                             # OPTIONAL
                             datastoreIoLatencyThreshold = $someInt
                             # OPTIONAL
                             ioLatencyThreshold = $someInt
                         }
                     }
                 }
                 # OPTIONAL
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateVmNew operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationVsphereVm</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationVsphereVm</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 26 operations in the 'VMware vSphere VM' API domain: BatchExport, BatchExportV3, BatchInPlaceRecovery, DeleteSnapshot, DownloadSnapshot, DownloadSnapshotFiles, ExcludeVmDisks, ExportSnapshotV2, ExportSnapshotV3, ExportSnapshotWithDownloadFromCloud, InitiateBatchInstantRecovery, InitiateBatchLiveMountV2, InitiateDiskMount, InitiateInPlaceRecovery, InitiateInstantRecoveryV2, InitiateLiveMountV2, ListEsxiDatastores, MountRelocate, MountRelocateV2, PowerOnOffLiveMount, RecoverFiles, RecoverFilesNew, RegisterAgent, RegisterAgentWithOrg, Update, or UpdateUnmountTime.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationVsphereVm creates a new mutation object for operations in the 'VMware vSphere VM' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 26 operations in the 'VMware vSphere VM' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BatchExport, BatchExportV3, BatchInPlaceRecovery, DeleteSnapshot, DownloadSnapshot, DownloadSnapshotFiles, ExcludeVmDisks, ExportSnapshotV2, ExportSnapshotV3, ExportSnapshotWithDownloadFromCloud, InitiateBatchInstantRecovery, InitiateBatchLiveMountV2, InitiateDiskMount, InitiateInPlaceRecovery, InitiateInstantRecoveryV2, InitiateLiveMountV2, ListEsxiDatastores, MountRelocate, MountRelocateV2, PowerOnOffLiveMount, RecoverFiles, RecoverFilesNew, RegisterAgent, RegisterAgentWithOrg, Update, or UpdateUnmountTime. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVsphereVm -BatchExport).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationVsphereVm -BatchExport).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationVsphereVm</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BatchExport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchExportV3</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BatchInPlaceRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadSnapshotFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExcludeVmDisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportSnapshotV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportSnapshotV3</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportSnapshotWithDownloadFromCloud</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InitiateBatchInstantRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InitiateBatchLiveMountV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InitiateDiskMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InitiateInPlaceRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InitiateInstantRecoveryV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InitiateLiveMountV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ListEsxiDatastores</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MountRelocate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MountRelocateV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PowerOnOffLiveMount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverFilesNew</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterAgent</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegisterAgentWithOrg</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Update</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UpdateUnmountTime</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: BatchExport
              
             $query = New-RscMutationVsphereVm -BatchExport
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             vmNamePrefix = $someString
                             # REQUIRED
                             config = @{
                                 # OPTIONAL
                                 hostId = $someString
                                 # OPTIONAL
                                 shouldRecoverTags = $someBoolean
                                 # OPTIONAL
                                 unregisterVm = $someBoolean
                                 # OPTIONAL
                                 clusterId = $someString
                                 # OPTIONAL
                                 resourcePoolId = $someString
                                 # OPTIONAL
                                 shouldUseHotAddProxy = $someBoolean
                                 # OPTIONAL
                                 folderId = $someString
                                 # OPTIONAL
                                 contentLibraryId = $someString
                                 # OPTIONAL
                                 shouldConvertToTemplate = $someBoolean
                                 # REQUIRED
                                 datastoreId = $someString
                                 # OPTIONAL
                                 mountExportSnapshotJobCommonOptionsV2 = @{
                                     # OPTIONAL
                                     disableNetwork = $someBoolean
                                     # OPTIONAL
                                     keepMacAddresses = $someBoolean
                                     # OPTIONAL
                                     powerOn = $someBoolean
                                     # OPTIONAL
                                     removeNetworkDevices = $someBoolean
                                     # OPTIONAL
                                     vmName = $someString
                                 }
                                 # OPTIONAL
                                 requiredRecoveryParameters = @{
                                     # OPTIONAL
                                     recoveryPoint = $someDateTime
                                     # OPTIONAL
                                     snapshotId = $someString
                                 }
                                 # OPTIONAL
                                 vNicBindings = @(
                                     @{
                                         # REQUIRED
                                         backingNetworkInfo = @{
                                             # REQUIRED
                                             moid = $someString
                                             # REQUIRED
                                             name = $someString
                                         }
                                         # REQUIRED
                                         networkDeviceInfo = @{
                                             # REQUIRED
                                             key = $someInt
                                             # REQUIRED
                                             name = $someString
                                         }
                                     }
                                 )
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchExport operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: BatchExportV3
              
             $query = New-RscMutationVsphereVm -BatchExportV3
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             vmNamePrefix = $someString
                             # REQUIRED
                             config = @{
                                 # OPTIONAL
                                 clusterId = $someString
                                 # OPTIONAL
                                 hostId = $someString
                                 # OPTIONAL
                                 resourcePoolId = $someString
                                 # OPTIONAL
                                 shouldRecoverTags = $someBoolean
                                 # OPTIONAL
                                 shouldUseHotAddProxy = $someBoolean
                                 # OPTIONAL
                                 storageLocationId = $someString
                                 # OPTIONAL
                                 unregisterVm = $someBoolean
                                 # OPTIONAL
                                 folderId = $someString
                                 # OPTIONAL
                                 contentLibraryId = $someString
                                 # OPTIONAL
                                 shouldConvertToTemplate = $someBoolean
                                 # OPTIONAL
                                 diskDeviceKeyToStorageId = @(
                                     @{
                                         # OPTIONAL
                                         storageLocationId = $someString
                                         # REQUIRED
                                         deviceKey = $someInt
                                     }
                                 )
                                 # OPTIONAL
                                 mountExportSnapshotJobCommonOptionsV2 = @{
                                     # OPTIONAL
                                     disableNetwork = $someBoolean
                                     # OPTIONAL
                                     keepMacAddresses = $someBoolean
                                     # OPTIONAL
                                     powerOn = $someBoolean
                                     # OPTIONAL
                                     removeNetworkDevices = $someBoolean
                                     # OPTIONAL
                                     vmName = $someString
                                 }
                                 # OPTIONAL
                                 requiredRecoveryParameters = @{
                                     # OPTIONAL
                                     recoveryPoint = $someDateTime
                                     # OPTIONAL
                                     snapshotId = $someString
                                 }
                                 # OPTIONAL
                                 vNicBindings = @(
                                     @{
                                         # REQUIRED
                                         backingNetworkInfo = @{
                                             # REQUIRED
                                             moid = $someString
                                             # REQUIRED
                                             name = $someString
                                         }
                                         # REQUIRED
                                         networkDeviceInfo = @{
                                             # REQUIRED
                                             key = $someInt
                                             # REQUIRED
                                             name = $someString
                                         }
                                     }
                                 )
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchExportV3 operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: BatchInPlaceRecovery
              
             $query = New-RscMutationVsphereVm -BatchInPlaceRecovery
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # REQUIRED
                             config = @{
                                 # OPTIONAL
                                 shouldKeepVsphereSnapshotAfterRecovery = $someBoolean
                                 # OPTIONAL
                                 requiredRecoveryParameters = @{
                                     # OPTIONAL
                                     recoveryPoint = $someDateTime
                                     # OPTIONAL
                                     snapshotId = $someString
                                 }
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BatchInPlaceRecovery operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: DeleteSnapshot
              
             $query = New-RscMutationVsphereVm -DeleteSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 location = $someDeleteVmwareSnapshotRequestLocation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeleteVmwareSnapshotRequestLocation]) for enum values.
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteSnapshot operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: DownloadSnapshot
              
             $query = New-RscMutationVsphereVm -DownloadSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshot operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: DownloadSnapshotFiles
              
             $query = New-RscMutationVsphereVm -DownloadSnapshotFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotFid = $someString
                 # REQUIRED
                 paths = @(
                     $someString
                 )
                 # OPTIONAL
                 deltaTypeFilter = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
                 # OPTIONAL
                 nextSnapshotFid = $someString
                 # OPTIONAL
                 isLegalHoldDownload = $someBoolean
                 # OPTIONAL
                 userNote = $someString
                 # OPTIONAL
                 zipPassword = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadSnapshotFiles operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: ExcludeVmDisks
              
             $query = New-RscMutationVsphereVm -ExcludeVmDisks
              
             # REQUIRED
             $query.Var.input = @(
                 @{
                     # REQUIRED
                     virtualDiskFid = $someString
                     # OPTIONAL
                     excludeFromSnapshots = $someBoolean
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExcludeVmDisks operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: ExportSnapshotV2
              
             $query = New-RscMutationVsphereVm -ExportSnapshotV2
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     shouldRecoverTags = $someBoolean
                     # OPTIONAL
                     unregisterVm = $someBoolean
                     # OPTIONAL
                     clusterId = $someString
                     # OPTIONAL
                     resourcePoolId = $someString
                     # OPTIONAL
                     shouldUseHotAddProxy = $someBoolean
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     contentLibraryId = $someString
                     # OPTIONAL
                     shouldConvertToTemplate = $someBoolean
                     # REQUIRED
                     datastoreId = $someString
                     # OPTIONAL
                     mountExportSnapshotJobCommonOptionsV2 = @{
                         # OPTIONAL
                         disableNetwork = $someBoolean
                         # OPTIONAL
                         keepMacAddresses = $someBoolean
                         # OPTIONAL
                         powerOn = $someBoolean
                         # OPTIONAL
                         removeNetworkDevices = $someBoolean
                         # OPTIONAL
                         vmName = $someString
                     }
                     # OPTIONAL
                     requiredRecoveryParameters = @{
                         # OPTIONAL
                         recoveryPoint = $someDateTime
                         # OPTIONAL
                         snapshotId = $someString
                     }
                     # OPTIONAL
                     vNicBindings = @(
                         @{
                             # REQUIRED
                             backingNetworkInfo = @{
                                 # REQUIRED
                                 moid = $someString
                                 # REQUIRED
                                 name = $someString
                             }
                             # REQUIRED
                             networkDeviceInfo = @{
                                 # REQUIRED
                                 key = $someInt
                                 # REQUIRED
                                 name = $someString
                             }
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportSnapshotV2 operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: ExportSnapshotV3
              
             $query = New-RscMutationVsphereVm -ExportSnapshotV3
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     clusterId = $someString
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     resourcePoolId = $someString
                     # OPTIONAL
                     shouldRecoverTags = $someBoolean
                     # OPTIONAL
                     shouldUseHotAddProxy = $someBoolean
                     # OPTIONAL
                     storageLocationId = $someString
                     # OPTIONAL
                     unregisterVm = $someBoolean
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     contentLibraryId = $someString
                     # OPTIONAL
                     shouldConvertToTemplate = $someBoolean
                     # OPTIONAL
                     diskDeviceKeyToStorageId = @(
                         @{
                             # OPTIONAL
                             storageLocationId = $someString
                             # REQUIRED
                             deviceKey = $someInt
                         }
                     )
                     # OPTIONAL
                     mountExportSnapshotJobCommonOptionsV2 = @{
                         # OPTIONAL
                         disableNetwork = $someBoolean
                         # OPTIONAL
                         keepMacAddresses = $someBoolean
                         # OPTIONAL
                         powerOn = $someBoolean
                         # OPTIONAL
                         removeNetworkDevices = $someBoolean
                         # OPTIONAL
                         vmName = $someString
                     }
                     # OPTIONAL
                     requiredRecoveryParameters = @{
                         # OPTIONAL
                         recoveryPoint = $someDateTime
                         # OPTIONAL
                         snapshotId = $someString
                     }
                     # OPTIONAL
                     vNicBindings = @(
                         @{
                             # REQUIRED
                             backingNetworkInfo = @{
                                 # REQUIRED
                                 moid = $someString
                                 # REQUIRED
                                 name = $someString
                             }
                             # REQUIRED
                             networkDeviceInfo = @{
                                 # REQUIRED
                                 key = $someInt
                                 # REQUIRED
                                 name = $someString
                             }
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportSnapshotV3 operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: ExportSnapshotWithDownloadFromCloud
              
             $query = New-RscMutationVsphereVm -ExportSnapshotWithDownloadFromCloud
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     shouldRecoverTags = $someBoolean
                     # OPTIONAL
                     unregisterVm = $someBoolean
                     # OPTIONAL
                     clusterId = $someString
                     # OPTIONAL
                     resourcePoolId = $someString
                     # OPTIONAL
                     shouldUseHotAddProxy = $someBoolean
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     contentLibraryId = $someString
                     # OPTIONAL
                     shouldConvertToTemplate = $someBoolean
                     # REQUIRED
                     datastoreId = $someString
                     # OPTIONAL
                     mountExportSnapshotJobCommonOptionsV2 = @{
                         # OPTIONAL
                         disableNetwork = $someBoolean
                         # OPTIONAL
                         keepMacAddresses = $someBoolean
                         # OPTIONAL
                         powerOn = $someBoolean
                         # OPTIONAL
                         removeNetworkDevices = $someBoolean
                         # OPTIONAL
                         vmName = $someString
                     }
                     # OPTIONAL
                     requiredRecoveryParameters = @{
                         # OPTIONAL
                         recoveryPoint = $someDateTime
                         # OPTIONAL
                         snapshotId = $someString
                     }
                     # OPTIONAL
                     vNicBindings = @(
                         @{
                             # REQUIRED
                             backingNetworkInfo = @{
                                 # REQUIRED
                                 moid = $someString
                                 # REQUIRED
                                 name = $someString
                             }
                             # REQUIRED
                             networkDeviceInfo = @{
                                 # REQUIRED
                                 key = $someInt
                                 # REQUIRED
                                 name = $someString
                             }
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportSnapshotWithDownloadFromCloud operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: InitiateBatchInstantRecovery
              
             $query = New-RscMutationVsphereVm -InitiateBatchInstantRecovery
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # REQUIRED
                             config = @{
                                 # OPTIONAL
                                 hostId = $someString
                                 # OPTIONAL
                                 preserveMoid = $someBoolean
                                 # OPTIONAL
                                 shouldRecoverTags = $someBoolean
                                 # OPTIONAL
                                 vlan = $someInt
                                 # OPTIONAL
                                 clusterId = $someString
                                 # OPTIONAL
                                 resourcePoolId = $someString
                                 # OPTIONAL
                                 shouldMigrateImmediately = $someBoolean
                                 # OPTIONAL
                                 migrationConfig = @{
                                     # OPTIONAL
                                     storageLocationId = $someString
                                     # OPTIONAL
                                     computeClusterId = $someString
                                     # OPTIONAL
                                     hostId = $someString
                                     # OPTIONAL
                                     resourcePoolId = $someString
                                     # OPTIONAL
                                     diskDeviceKeyToStorageId = @(
                                         @{
                                             # OPTIONAL
                                             storageLocationId = $someString
                                             # REQUIRED
                                             deviceKey = $someInt
                                         }
                                     )
                                     # OPTIONAL
                                     networkDeviceKeyToNetworkName = @(
                                         @{
                                             # REQUIRED
                                             deviceKey = $someInt
                                             # REQUIRED
                                             networkName = $someString
                                         }
                                     )
                                 }
                                 # OPTIONAL
                                 mountExportSnapshotJobCommonOptionsV2 = @{
                                     # OPTIONAL
                                     disableNetwork = $someBoolean
                                     # OPTIONAL
                                     keepMacAddresses = $someBoolean
                                     # OPTIONAL
                                     powerOn = $someBoolean
                                     # OPTIONAL
                                     removeNetworkDevices = $someBoolean
                                     # OPTIONAL
                                     vmName = $someString
                                 }
                                 # OPTIONAL
                                 requiredRecoveryParameters = @{
                                     # OPTIONAL
                                     recoveryPoint = $someDateTime
                                     # OPTIONAL
                                     snapshotId = $someString
                                 }
                                 # OPTIONAL
                                 vNicBindings = @(
                                     @{
                                         # REQUIRED
                                         backingNetworkInfo = @{
                                             # REQUIRED
                                             moid = $someString
                                             # REQUIRED
                                             name = $someString
                                         }
                                         # REQUIRED
                                         networkDeviceInfo = @{
                                             # REQUIRED
                                             key = $someInt
                                             # REQUIRED
                                             name = $someString
                                         }
                                     }
                                 )
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InitiateBatchInstantRecovery operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: InitiateBatchLiveMountV2
              
             $query = New-RscMutationVsphereVm -InitiateBatchLiveMountV2
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     snapshots = @(
                         @{
                             # OPTIONAL
                             snapshotAfterDate = $someDateTime
                             # OPTIONAL
                             snapshotBeforeDate = $someDateTime
                             # OPTIONAL
                             snapshotId = $someString
                             # OPTIONAL
                             vmNamePrefix = $someString
                             # REQUIRED
                             config = @{
                                 # OPTIONAL
                                 createDatastoreOnly = $someBoolean
                                 # OPTIONAL
                                 dataStoreName = $someString
                                 # OPTIONAL
                                 hostId = $someString
                                 # OPTIONAL
                                 shouldRecoverTags = $someBoolean
                                 # OPTIONAL
                                 vlan = $someInt
                                 # OPTIONAL
                                 clusterId = $someString
                                 # OPTIONAL
                                 resourcePoolId = $someString
                                 # OPTIONAL
                                 shouldMigrateImmediately = $someBoolean
                                 # OPTIONAL
                                 folderId = $someString
                                 # OPTIONAL
                                 unmountTimeOpt = $someInt64
                                 # OPTIONAL
                                 migrationConfig = @{
                                     # OPTIONAL
                                     storageLocationId = $someString
                                     # OPTIONAL
                                     computeClusterId = $someString
                                     # OPTIONAL
                                     hostId = $someString
                                     # OPTIONAL
                                     resourcePoolId = $someString
                                     # OPTIONAL
                                     diskDeviceKeyToStorageId = @(
                                         @{
                                             # OPTIONAL
                                             storageLocationId = $someString
                                             # REQUIRED
                                             deviceKey = $someInt
                                         }
                                     )
                                     # OPTIONAL
                                     networkDeviceKeyToNetworkName = @(
                                         @{
                                             # REQUIRED
                                             deviceKey = $someInt
                                             # REQUIRED
                                             networkName = $someString
                                         }
                                     )
                                 }
                                 # OPTIONAL
                                 mountExportSnapshotJobCommonOptionsV2 = @{
                                     # OPTIONAL
                                     disableNetwork = $someBoolean
                                     # OPTIONAL
                                     keepMacAddresses = $someBoolean
                                     # OPTIONAL
                                     powerOn = $someBoolean
                                     # OPTIONAL
                                     removeNetworkDevices = $someBoolean
                                     # OPTIONAL
                                     vmName = $someString
                                 }
                                 # OPTIONAL
                                 requiredRecoveryParameters = @{
                                     # OPTIONAL
                                     recoveryPoint = $someDateTime
                                     # OPTIONAL
                                     snapshotId = $someString
                                 }
                                 # OPTIONAL
                                 vNicBindings = @(
                                     @{
                                         # REQUIRED
                                         backingNetworkInfo = @{
                                             # REQUIRED
                                             moid = $someString
                                             # REQUIRED
                                             name = $someString
                                         }
                                         # REQUIRED
                                         networkDeviceInfo = @{
                                             # REQUIRED
                                             key = $someInt
                                             # REQUIRED
                                             name = $someString
                                         }
                                     }
                                 )
                             }
                             # REQUIRED
                             vmId = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InitiateBatchLiveMountV2 operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: InitiateDiskMount
              
             $query = New-RscMutationVsphereVm -InitiateDiskMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     targetVmId = $someString
                     # OPTIONAL
                     vlan = $someInt
                     # OPTIONAL
                     vmdkIds = @(
                         $someString
                     )
                     # OPTIONAL
                     unmountTimeOpt = $someInt64
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InitiateDiskMount operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: InitiateInPlaceRecovery
              
             $query = New-RscMutationVsphereVm -InitiateInPlaceRecovery
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     shouldKeepVsphereSnapshotAfterRecovery = $someBoolean
                     # OPTIONAL
                     requiredRecoveryParameters = @{
                         # OPTIONAL
                         recoveryPoint = $someDateTime
                         # OPTIONAL
                         snapshotId = $someString
                     }
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InitiateInPlaceRecovery operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: InitiateInstantRecoveryV2
              
             $query = New-RscMutationVsphereVm -InitiateInstantRecoveryV2
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     preserveMoid = $someBoolean
                     # OPTIONAL
                     shouldRecoverTags = $someBoolean
                     # OPTIONAL
                     vlan = $someInt
                     # OPTIONAL
                     clusterId = $someString
                     # OPTIONAL
                     resourcePoolId = $someString
                     # OPTIONAL
                     shouldMigrateImmediately = $someBoolean
                     # OPTIONAL
                     migrationConfig = @{
                         # OPTIONAL
                         storageLocationId = $someString
                         # OPTIONAL
                         computeClusterId = $someString
                         # OPTIONAL
                         hostId = $someString
                         # OPTIONAL
                         resourcePoolId = $someString
                         # OPTIONAL
                         diskDeviceKeyToStorageId = @(
                             @{
                                 # OPTIONAL
                                 storageLocationId = $someString
                                 # REQUIRED
                                 deviceKey = $someInt
                             }
                         )
                         # OPTIONAL
                         networkDeviceKeyToNetworkName = @(
                             @{
                                 # REQUIRED
                                 deviceKey = $someInt
                                 # REQUIRED
                                 networkName = $someString
                             }
                         )
                     }
                     # OPTIONAL
                     mountExportSnapshotJobCommonOptionsV2 = @{
                         # OPTIONAL
                         disableNetwork = $someBoolean
                         # OPTIONAL
                         keepMacAddresses = $someBoolean
                         # OPTIONAL
                         powerOn = $someBoolean
                         # OPTIONAL
                         removeNetworkDevices = $someBoolean
                         # OPTIONAL
                         vmName = $someString
                     }
                     # OPTIONAL
                     requiredRecoveryParameters = @{
                         # OPTIONAL
                         recoveryPoint = $someDateTime
                         # OPTIONAL
                         snapshotId = $someString
                     }
                     # OPTIONAL
                     vNicBindings = @(
                         @{
                             # REQUIRED
                             backingNetworkInfo = @{
                                 # REQUIRED
                                 moid = $someString
                                 # REQUIRED
                                 name = $someString
                             }
                             # REQUIRED
                             networkDeviceInfo = @{
                                 # REQUIRED
                                 key = $someInt
                                 # REQUIRED
                                 name = $someString
                             }
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InitiateInstantRecoveryV2 operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: InitiateLiveMountV2
              
             $query = New-RscMutationVsphereVm -InitiateLiveMountV2
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 config = @{
                     # OPTIONAL
                     createDatastoreOnly = $someBoolean
                     # OPTIONAL
                     dataStoreName = $someString
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     shouldRecoverTags = $someBoolean
                     # OPTIONAL
                     vlan = $someInt
                     # OPTIONAL
                     clusterId = $someString
                     # OPTIONAL
                     resourcePoolId = $someString
                     # OPTIONAL
                     shouldMigrateImmediately = $someBoolean
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     unmountTimeOpt = $someInt64
                     # OPTIONAL
                     migrationConfig = @{
                         # OPTIONAL
                         storageLocationId = $someString
                         # OPTIONAL
                         computeClusterId = $someString
                         # OPTIONAL
                         hostId = $someString
                         # OPTIONAL
                         resourcePoolId = $someString
                         # OPTIONAL
                         diskDeviceKeyToStorageId = @(
                             @{
                                 # OPTIONAL
                                 storageLocationId = $someString
                                 # REQUIRED
                                 deviceKey = $someInt
                             }
                         )
                         # OPTIONAL
                         networkDeviceKeyToNetworkName = @(
                             @{
                                 # REQUIRED
                                 deviceKey = $someInt
                                 # REQUIRED
                                 networkName = $someString
                             }
                         )
                     }
                     # OPTIONAL
                     mountExportSnapshotJobCommonOptionsV2 = @{
                         # OPTIONAL
                         disableNetwork = $someBoolean
                         # OPTIONAL
                         keepMacAddresses = $someBoolean
                         # OPTIONAL
                         powerOn = $someBoolean
                         # OPTIONAL
                         removeNetworkDevices = $someBoolean
                         # OPTIONAL
                         vmName = $someString
                     }
                     # OPTIONAL
                     requiredRecoveryParameters = @{
                         # OPTIONAL
                         recoveryPoint = $someDateTime
                         # OPTIONAL
                         snapshotId = $someString
                     }
                     # OPTIONAL
                     vNicBindings = @(
                         @{
                             # REQUIRED
                             backingNetworkInfo = @{
                                 # REQUIRED
                                 moid = $someString
                                 # REQUIRED
                                 name = $someString
                             }
                             # REQUIRED
                             networkDeviceInfo = @{
                                 # REQUIRED
                                 key = $someInt
                                 # REQUIRED
                                 name = $someString
                             }
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the InitiateLiveMountV2 operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: ListEsxiDatastores
              
             $query = New-RscMutationVsphereVm -ListEsxiDatastores
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 loginInfo = @{
                     # REQUIRED
                     ip = $someString
                     # REQUIRED
                     password = $someString
                     # REQUIRED
                     username = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereVmListEsxiDatastoresReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ListEsxiDatastores operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: MountRelocate
              
             $query = New-RscMutationVsphereVm -MountRelocate
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     datastoreId = $someString
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the MountRelocate operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: MountRelocateV2
              
             $query = New-RscMutationVsphereVm -MountRelocateV2
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     storageLocationId = $someString
                     # OPTIONAL
                     computeClusterId = $someString
                     # OPTIONAL
                     hostId = $someString
                     # OPTIONAL
                     resourcePoolId = $someString
                     # OPTIONAL
                     diskDeviceKeyToStorageId = @(
                         @{
                             # OPTIONAL
                             storageLocationId = $someString
                             # REQUIRED
                             deviceKey = $someInt
                         }
                     )
                     # OPTIONAL
                     networkDeviceKeyToNetworkName = @(
                         @{
                             # REQUIRED
                             deviceKey = $someInt
                             # REQUIRED
                             networkName = $someString
                         }
                     )
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the MountRelocateV2 operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: PowerOnOffLiveMount
              
             $query = New-RscMutationVsphereVm -PowerOnOffLiveMount
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     shouldForce = $someBoolean
                     # REQUIRED
                     powerStatus = $someBoolean
                 }
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereVmPowerOnOffLiveMountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PowerOnOffLiveMount operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: RecoverFiles
              
             $query = New-RscMutationVsphereVm -RecoverFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotFid = $someString
                 # REQUIRED
                 restoreConfig = @{
                     # OPTIONAL
                     restoreFilesConfig = @(
                         @{
                             # OPTIONAL
                             path = $someString
                             # OPTIONAL
                             restorePath = $someString
                         }
                     )
                     # OPTIONAL
                     domainName = $someString
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     shouldIgnoreErrors = $someBoolean
                     # OPTIONAL
                     shouldSaveCredentials = $someBoolean
                     # OPTIONAL
                     shouldUseAgent = $someBoolean
                     # OPTIONAL
                     shouldRestoreXAttrs = $someBoolean
                     # OPTIONAL
                     deltaTypeFilter = @(
                         $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                     )
                     # OPTIONAL
                     nextSnapshotFid = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereAsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverFiles operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: RecoverFilesNew
              
             $query = New-RscMutationVsphereVm -RecoverFilesNew
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 config = @{
                     # OPTIONAL
                     domainName = $someString
                     # OPTIONAL
                     ignoreErrors = $someBoolean
                     # OPTIONAL
                     password = $someString
                     # OPTIONAL
                     shouldSaveCredentials = $someBoolean
                     # OPTIONAL
                     username = $someString
                     # OPTIONAL
                     destObjectId = $someString
                     # OPTIONAL
                     shouldRestoreXAttrs = $someBoolean
                     # OPTIONAL
                     shouldUseAgent = $someBoolean
                     # OPTIONAL
                     guestCredentialId = $someString
                     # OPTIONAL
                     description = $someString
                     # OPTIONAL
                     shouldUseMountDisks = $someBoolean
                     # REQUIRED
                     restoreConfig = @(
                         @{
                             # OPTIONAL
                             restorePathPair = @{
                                 # OPTIONAL
                                 restorePath = $someString
                                 # REQUIRED
                                 path = $someString
                             }
                         }
                     )
                 }
                 # OPTIONAL
                 deltaRequest = @{
                     # REQUIRED
                     nextSnapshotFid = $someString
                     # REQUIRED
                     deltaTypeFilter = @(
                         $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverFilesNew operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: RegisterAgent
              
             $query = New-RscMutationVsphereVm -RegisterAgent
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 orgNetworkId = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterAgent operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: RegisterAgentWithOrg
              
             $query = New-RscMutationVsphereVm -RegisterAgentWithOrg
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # OPTIONAL
                 orgNetworkIdOpt = $someString
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegisterAgentWithOrg operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: Update
              
             $query = New-RscMutationVsphereVm -Update
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 vmUpdateProperties = @{
                     # OPTIONAL
                     shouldRefreshCacheAfterUpdate = $someBoolean
                     # OPTIONAL
                     guestCredentialId = $someString
                     # OPTIONAL
                     guestCredential = @{
                         # REQUIRED
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                     # OPTIONAL
                     virtualMachineUpdate = @{
                         # OPTIONAL
                         configuredSlaDomainId = $someString
                         # OPTIONAL
                         isArrayIntegrationEnabled = $someBoolean
                         # OPTIONAL
                         isVmPaused = $someBoolean
                         # OPTIONAL
                         maxNestedVsphereSnapshots = $someInt
                         # OPTIONAL
                         snapshotConsistencyMandate = $someVirtualMachineUpdateSnapshotConsistencyMandate # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineUpdateSnapshotConsistencyMandate]) for enum values.
                         # OPTIONAL
                         cloudInstantiationSpec = @{
                             # REQUIRED
                             imageRetentionInSeconds = $someInt64
                         }
                         # OPTIONAL
                         postBackupScript = @{
                             # REQUIRED
                             failureHandling = $someVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineScriptDetailFailureHandling]) for enum values.
                             # REQUIRED
                             scriptPath = $someString
                             # REQUIRED
                             timeoutMs = $someInt64
                         }
                         # OPTIONAL
                         postSnapScript = @{
                             # REQUIRED
                             failureHandling = $someVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineScriptDetailFailureHandling]) for enum values.
                             # REQUIRED
                             scriptPath = $someString
                             # REQUIRED
                             timeoutMs = $someInt64
                         }
                         # OPTIONAL
                         preBackupScript = @{
                             # REQUIRED
                             failureHandling = $someVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VirtualMachineScriptDetailFailureHandling]) for enum values.
                             # REQUIRED
                             scriptPath = $someString
                             # REQUIRED
                             timeoutMs = $someInt64
                         }
                         # OPTIONAL
                         throttlingSettings = @{
                             # OPTIONAL
                             cpuUtilizationThreshold = $someInt
                             # OPTIONAL
                             datastoreIoLatencyThreshold = $someInt
                             # OPTIONAL
                             ioLatencyThreshold = $someInt
                         }
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RequestSuccess</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: UpdateUnmountTime
              
             $query = New-RscMutationVsphereVm -UpdateUnmountTime
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 config = @{
                     # REQUIRED
                     newUnmountTime = $someInt64
                 }
                 # REQUIRED
                 mountId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateUnmountTime operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscMutationWebhook</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscMutationWebhook</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 5 operations in the 'Webhook' API domain: Create, Delete, Test, TestExisting, or Update.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationWebhook creates a new mutation object for operations in the 'Webhook' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 5 operations in the 'Webhook' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Create, Delete, Test, TestExisting, or Update. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationWebhook -Create).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationWebhook -Create).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscMutationWebhook</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Create</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Delete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Test</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TestExisting</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Update</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Webhook
             # API Operation: Create
              
             $query = New-RscMutationWebhook -Create
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 serverCertificate = $someString
                 # OPTIONAL
                 serviceAccountId = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 url = $someString
                 # REQUIRED
                 subscriptionType = @{
                     # OPTIONAL
                     eventTypes = @(
                         $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     auditTypes = @(
                         $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     objectTypes = @(
                         $someEventObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventObjectType]) for enum values.
                     )
                     # OPTIONAL
                     isSubscribedToAllEvents = $someBoolean
                     # OPTIONAL
                     isSubscribedToAllAudits = $someBoolean
                     # OPTIONAL
                     isSubscribedToAllObjectTypes = $someBoolean
                 }
                 # REQUIRED
                 subscriptionSeverity = @{
                     # OPTIONAL
                     eventSeverities = @(
                         $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values.
                     )
                     # OPTIONAL
                     auditSeverities = @(
                         $someUserAuditSeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditSeverityEnum]) for enum values.
                     )
                 }
                 # REQUIRED
                 providerType = $someProviderType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProviderType]) for enum values.
                 # OPTIONAL
                 authInfo = @{
                     # REQUIRED
                     authType = $someAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthenticationType]) for enum values.
                     # OPTIONAL
                     token = $someString
                     # OPTIONAL
                     userCredentials = @{
                         # REQUIRED
                         username = $someString
                         # REQUIRED
                         password = $someString
                     }
                     # OPTIONAL
                     customHeader = @{
                         # REQUIRED
                         headerKey = $someString
                         # REQUIRED
                         headerValue = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CreateWebhookReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Create operation of the 'Webhook' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Webhook
             # API Operation: Delete
              
             $query = New-RscMutationWebhook -Delete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the Delete operation of the 'Webhook' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Webhook
             # API Operation: Test
              
             $query = New-RscMutationWebhook -Test
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 serverCertificate = $someString
                 # REQUIRED
                 providerType = $someProviderType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProviderType]) for enum values.
                 # OPTIONAL
                 authInfo = @{
                     # REQUIRED
                     authType = $someAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthenticationType]) for enum values.
                     # OPTIONAL
                     token = $someString
                     # OPTIONAL
                     userCredentials = @{
                         # REQUIRED
                         username = $someString
                         # REQUIRED
                         password = $someString
                     }
                     # OPTIONAL
                     customHeader = @{
                         # REQUIRED
                         headerKey = $someString
                         # REQUIRED
                         headerValue = $someString
                     }
                 }
                 # REQUIRED
                 url = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TestWebhookReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Test operation of the 'Webhook' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Webhook
             # API Operation: TestExisting
              
             $query = New-RscMutationWebhook -TestExisting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TestExistingWebhookReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the TestExisting operation of the 'Webhook' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Webhook
             # API Operation: Update
              
             $query = New-RscMutationWebhook -Update
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 serverCertificate = $someString
                 # OPTIONAL
                 serviceAccountId = $someString
                 # REQUIRED
                 id = $someInt
                 # OPTIONAL
                 subscriptionType = @{
                     # OPTIONAL
                     eventTypes = @(
                         $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     auditTypes = @(
                         $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     objectTypes = @(
                         $someEventObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventObjectType]) for enum values.
                     )
                     # OPTIONAL
                     isSubscribedToAllEvents = $someBoolean
                     # OPTIONAL
                     isSubscribedToAllAudits = $someBoolean
                     # OPTIONAL
                     isSubscribedToAllObjectTypes = $someBoolean
                 }
                 # OPTIONAL
                 subscriptionSeverity = @{
                     # OPTIONAL
                     eventSeverities = @(
                         $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values.
                     )
                     # OPTIONAL
                     auditSeverities = @(
                         $someUserAuditSeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditSeverityEnum]) for enum values.
                     )
                 }
                 # OPTIONAL
                 providerType = $someProviderType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProviderType]) for enum values.
                 # OPTIONAL
                 authInfo = @{
                     # REQUIRED
                     authType = $someAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthenticationType]) for enum values.
                     # OPTIONAL
                     token = $someString
                     # OPTIONAL
                     userCredentials = @{
                         # REQUIRED
                         username = $someString
                         # REQUIRED
                         password = $someString
                     }
                     # OPTIONAL
                     customHeader = @{
                         # REQUIRED
                         headerKey = $someString
                         # REQUIRED
                         headerValue = $someString
                     }
                 }
                 # OPTIONAL
                 status = $someWebhookStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WebhookStatus]) for enum values.
                 # OPTIONAL
                 url = $someString
                 # OPTIONAL
                 shouldSendTestEvent = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateWebhookReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update operation of the 'Webhook' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuery</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuery</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para></maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuery</maml:name>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="none">
          <maml:name>Domain</maml:name>
          <maml:description>
            <maml:para>API Domain.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Unknown</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Account</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ActiveDirectory</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ActivitySeries</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Archival</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Aws</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AwsNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Azure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AzureNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AzureO365</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Cassandra</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Certificate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Cluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CrossAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Db2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Download</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Exchange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FailoverCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Fileset</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Gcp</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GcpNative</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Host</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Hyperv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Integration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">K8s</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ldap</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">M365</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedVolume</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Misc</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mongo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MongoDb</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mosaic</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mssql</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nas</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ncd</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nfs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nutanix</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">O365</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Oracle</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Policy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ransomware</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Rcs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Rcv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Replication</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Report</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SapHana</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ServiceAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sharepoint</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sla</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Smb</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snappable</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snmp</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sonar</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StorageArray</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Syslog</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Tape</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Threat</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vcenter</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vmware</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vsphere</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VsphereVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Webhook</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">ApiDomainName</command:parameterValue>
          <dev:type>
            <maml:name>ApiDomainName</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="none">
        <maml:name>Domain</maml:name>
        <maml:description>
          <maml:para>API Domain.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ApiDomainName</command:parameterValue>
        <dev:type>
          <maml:name>ApiDomainName</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="false" position="named" aliases="none">
        <maml:name>GqlQuery</maml:name>
        <maml:description>
          <maml:para>The root GraphQL query to be called</maml:para>
          <maml:para>```yaml Type: GqlQueryName Parameter Sets: GqlQuery Aliases: Accepted values: Unknown, accountId, accountSettings, activeCustomAnalyzers, activeDirectoryDomain, activeDirectoryDomainController, activeDirectoryDomainControllers, activeDirectoryDomains, activeDirectorySearchSnapshots, activitySeries, activitySeriesConnection, adGroupMembers, adVolumeExports, agentDeploymentSetting, allAccountOwners, allAccountProducts, allAccountsWithExocomputeMappings, allAgentDeploymentSettings, allAllowedOrgAdminOperations, allAuthorizationsForGlobalResource, allAuthorizationsForObject, allAuthorizationsForObjects, allAvailabilityZonesByRegionFromAws, allAwsCdmVersions, allAwsCloudAccountConfigs, allAwsCloudAccountsWithFeatures, allAwsComputeSettings, allAwsExocomputeConfigs, allAwsInstanceProfileNames, allAwsPermissionPolicies, allAwsRegions, allAzureArmTemplatesByFeature, allAzureBlobContainersByStorageAccount, allAzureCdmVersions, allAzureCloudAccountMissingPermissions, allAzureCloudAccountSubnetsByRegion, allAzureCloudAccountSubscriptionsByFeature, allAzureCloudAccountTenants, allAzureDiskEncryptionSetsByRegion, allAzureEncryptionKeys, allAzureExocomputeConfigsInAccount, allAzureKeyVaultsByRegion, allAzureManagedIdentities, allAzureNativeAvailabilitySetsByRegionFromAzure, allAzureNativeExportCompatibleDiskTypesByRegionFromAzure, allAzureNativeExportCompatibleVmSizesByRegionFromAzure, allAzureNativeResourceGroupsInfoIfExist, allAzureNativeSecurityGroupsByRegionFromAzure, allAzureNativeStorageAccountsFromAzure, allAzureNativeSubnetsByRegionFromAzure, allAzureNativeVirtualMachineSizes, allAzureNativeVirtualNetworks, allAzureNsgs, allAzureRegions, allAzureRegionsWithAzDetails, allAzureResourceGroups, allAzureSqlDatabaseServerElasticPools, allAzureStorageAccounts, allAzureStorageAccountsByRegion, allAzureSubnets, allAzureSubscriptionWithExocomputeMappings, allAzureVnets, allBackupThrottleSettings, allCdmGuestCredentials, allCdmOvaDetails, allCdpVmsInfos, allCloudAccountExocomputeMappings, allCloudAccounts, allCloudDirectShares, allCloudDirectSites, allCloudNativeFileRecoveryEligibleSnapshots, allCloudNativeLabelKeys, allCloudNativeLabelValues, allCloudNativeTagKeys, allCloudNativeTagValues, allClusterConnection, allClusterGlobalSlas, allClusterReplicationTargets, allClustersTotpAckStatus, allClusterWebCertsAndIpmis, allConnectedClusters, allCrossAccountClusters, allCurrentFeaturePermissionsForCloudAccounts, allCurrentOrgIdentityProviders, allDbParameterGroupsByRegionFromAws, allDbSubnetGroupsByRegionFromAws, allDeploymentIpAddresses, allDhrcActiveRecommendations, allDhrcLatestMetrics, allDhrcScores, allDistributionListDigests, allEc2KeyPairsByRegionFromAws, allEffectiveRbacPermissions, allEnabledFeaturesForAccount, allEventDigests, allFeaturePermissionsForGcpCloudAccount, allFileActivities, allGcpCloudAccountMissingPermissionsForAddition, allGcpCloudAccountProjectsByFeature, allGcpCloudAccountProjectsForOauth, allGcpNativeAvailableKmsCryptoKeys, allGcpNativeCompatibleMachineTypes, allGcpNativeNetworks, allGcpNativeProjectsWithAccessibleNetworks, allGcpNativeRegions, allGcpNativeStoredMachineTypes, allGcpNativeStoredMachineTypesInProject, allGcpNativeStoredNetworkNames, allGcpNativeStoredNetworkNamesInProject, allGcpNativeStoredRegions, allGcpNativeStoredRegionsInProject, allHostedAzureRegions, allIntegrations, allInventoryWorkloads, allIssuesJobIds, allK8sReplicaSnapshotInfos, allKmsEncryptionKeysByRegionFromAws, allLatestFeaturePermissionsForCloudAccounts, allLicensedProducts, allMissingClusters, allMssqlDatabaseRestoreFiles, allNcdObjectsOverTimeData, allNcdSlaComplianceData, allNcdTaskData, allNcdUsageOverTimeData, allNosqlStorageLocations, allO365AdGroups, allO365OrgStatuses, allO365SubscriptionsAppTypeCounts, allObjectsAlreadyAssignedToOrgs, allOptionGroupsByRegionFromAws, allOrgsByIds, allPendingActions, allQuarantinedDetailsForSnapshots, allQuarantinedDetailsForWorkload, allRcvAccountEntitlements, allRcvPrivateEndpointConnections, allResourceGroupsFromAzure, allS3BucketsDetailsFromAws, allS3BucketsFromAws, allSharepointSiteExclusions, allSlaSummariesByIds, allSnapshotPvcs, allSnapshotsClosestToPointInTime, allStorageArrays, allSupportedAwsEksVersions, allSupportedAwsRdsDatabaseInstanceClasses, allTargetMappings, allTargets, allTopRiskPolicySummaries, allUnmanagedObjectsSupportedTypes, allUserFiles, allUsersOnAccount, allUsersOnAccountConnection, allValidReplicationSources, allValidReplicationTargets, allVcenterHotAddProxyVms, allVirtualMachineFiles, allVmRecoveryJobsInfo, allVmwareCdpStateInfos, allVpcsByRegionFromAws, allVpcsFromAws, allVsphereVmsByFids, allWebhooks, amiTypeForAwsNativeArchivedSnapshotExport, analyzerGroups, analyzerUsages, anomalyResultOpt, anomalyResults, anomalyResultsGrouped, archivalStorageUsage, areMultiGeoBackupsEnabled, assignableGlobalCertificates, awsArtifactsToDelete, awsCloudAccountListSecurityGroups, awsCloudAccountListSubnets, awsCloudAccountListVpcs, awsCloudAccountWithFeatures, awsComputeSettings, awsExocomputeGetClusterConnectionInfo, awsNativeAccount, awsNativeAccounts, awsNativeEbsVolume, awsNativeEbsVolumes, awsNativeEbsVolumesByName, awsNativeEc2Instance, awsNativeEc2Instances, awsNativeEc2InstancesByName, awsNativeRdsExportDefaults, awsNativeRdsInstance, awsNativeRdsInstances, awsNativeRdsPointInTimeRestoreWindow, awsNativeRoot, awsNativeS3Bucket, awsTrustPolicy, azureAdDirectories, azureAdDirectory, azureAdObjectsByType, azureCloudAccountDetailsForFeature, azureCloudAccountPermissionConfig, azureCloudAccountSubscriptionWithFeatures, azureCloudAccountTenant, azureCloudAccountTenantWithExoConfigs, azureNativeManagedDisk, azureNativeManagedDisks, azureNativeResourceGroup, azureNativeResourceGroups, azureNativeRoot, azureNativeSubscription, azureNativeSubscriptions, azureNativeVirtualMachine, azureNativeVirtualMachines, azureO365CheckNetworkSubnet, azureO365CheckNSGOutboundRules, azureO365CheckResourceGroupName, azureO365CheckStorageAccountAccessibility, azureO365CheckStorageAccountName, azureO365CheckSubscriptionQuota, azureO365CheckVirtualNetworkName, azureO365Exocompute, azureO365GetAzureHostType, azureO365GetNetworkSubnetUnusedAddr, azureO365ValidateUserRoles, azureRegions, azureResourceGroups, azureSqlDatabase, azureSqlDatabaseDbPointInTimeRestoreWindowFromAzure, azureSqlDatabases, azureSqlDatabaseServer, azureSqlDatabaseServers, azureSqlManagedInstanceDatabase, azureSqlManagedInstanceDatabases, azureSqlManagedInstanceDbPointInTimeRestoreWindowFromAzure, azureSqlManagedInstanceServer, azureSqlManagedInstanceServers, azureStorageAccounts, azureSubnets, azureSubscriptions, azureVNets, browseCalendar, browseContacts, browseFolder, browseO365TeamConvChannels, browseOnedrive, browseSharepointDrive, browseSharepointList, browseSnapshotFileConnection, browseTeamsChannels, browseTeamsDrive, cassandraColumnFamilies, cassandraColumnFamily, cassandraColumnFamilyRecoverableRange, cassandraColumnFamilySchema, cassandraKeyspace, cassandraKeyspaces, cassandraSource, cassandraSources, cdmHierarchySnappableNew, cdmHierarchySnappablesNew, cdmInventorySubHierarchyRoot, cdmMssqlLogShippingTarget, cdmMssqlLogShippingTargets, cdmVersionCheck, certificateInfo, certificates, certificateSigningRequest, certificateSigningRequests, certificatesWithKey, checkAzurePersistentStorageSubscriptionCanUnmap, checkCloudComputeConnectivityJobProgress, checkCloudNativeLabelRuleNameUniqueness, checkCloudNativeTagRuleNameUniqueness, checkLatestVersionMgmtAppExists, cloudAccount, cloudDirectNasExport, cloudDirectSystems, cloudNativeCheckArchivedSnapshotsLocked, cloudNativeCheckRequiredPermissionsForFeature, cloudNativeCustomerTags, cloudNativeLabelRules, cloudNativeRbaInstallers, cloudNativeSnapshotDetailsForRecovery, cloudNativeSnapshots, cloudNativeSnapshotTypeDetails, cloudNativeSqlServerSetupScript, cloudNativeTagRules, cloudNativeWorkloadVersionedFiles, cluster, clusterCertificates, clusterConnection, clusterCsr, clusterDefaultGateway, clusterDns, clusterFloatingIps, clusterGroupByConnection, clusterIpmi, clusterIpv6Mode, clusterNetworkInterfaces, clusterNodes, clusterNtpServers, clusterOperationJobProgress, clusterProxy, clusterRegistrationProductInfo, clusterReportMigrationCount, clusterReportMigrationJobStatus, clusterReportMigrationStatus, clusterRoutes, clusterSlaDomains, clusterTypeList, clusterVlans, clusterWebSignedCertificate, clusterWithUpgradesInfo, computeClusterStatus, configuredGroupMembers, countOfObjectsProtectedBySlas, crawl, crawls, crossAccountPairs, currentIpAddress, currentOrg, currentOrgAuthDomainConfig, currentUser, currentUserLoginContext, customAnalyzer, dashboardSummary, databaseLogReportForCluster, databaseLogReportingPropertiesForCluster, datagovSecDesc, db2Database, db2DatabaseJobStatus, db2Databases, db2Instance, db2Instances, db2LogSnapshot, db2LogSnapshots, db2RecoverableRange, db2RecoverableRanges, decryptExportUrl, deploymentVersion, diffFmd, discoverNodes, discoveryTimeline, distributionListDigest, doesAzureNativeResourceGroupExist, downloadCdmUpgradesPdf, downloadedVersionList, downloadPackageStatus, downloadSlaWithReplicationCsv, dummyFieldWithAdminOnlyTag, edgeWindowsToolLink, exchangeDag, exchangeDags, exchangeDatabase, exchangeDatabases, exchangeLiveMounts, exchangeServer, exchangeServers, externalDeploymentName, failedRestoreItemsInfo, failoverClusterApp, failoverClusterApps, failoverClusterTopLevelDescendants, federatedLoginStatus, filesetRequestStatus, filesetSnapshot, filesetSnapshotFiles, filesetTemplate, filesetTemplates, gcpGetDefaultCredentialsServiceAccount, gcpNativeDisk, gcpNativeDisks, gcpNativeGceInstance, gcpNativeGceInstances, gcpNativeProject, gcpNativeProjects, gcpNativeStoredDiskLocations, geoLocationList, getAllRolesInOrgConnection, getCdmReleaseDetailsForClusterFromSupportPortal, getCdmReleaseDetailsForVersionFromSupportPortal, getCdmReleaseDetailsFromSupportPortal, getGroupCountByCdmClusterStatus, getGroupCountByPrechecksStatus, getGroupCountByUpgradeJobStatus, getGroupCountByVersionStatus, getKorgTaskchainStatus, getPermissions, getRolesByIds, getUserDownloads, globalCertificate, globalCertificates, globalFileSearch, globalLockoutConfig, globalMfaSetting, globalSearchResults, globalSlaFilterConnection, globalSlaStatuses, groupsInCurrentAndDescendantOrganization, guestCredentials, guestCredentialsV2, hasIdpConfigured, hasRelicAzureAdSnapshot, helpContentSnippets, hierarchyObject, hierarchyObjectRecoveryTarget, hierarchyObjects, hierarchySnappables, hostDiagnosis, hostFailoverCluster, hostFailoverClusters, hostShare, hostShares, hypervCluster, hypervHostAsyncRequestStatus, hypervMounts, hypervScvmm, hypervScvmmAsyncRequestStatus, hypervScvmms, hypervServer, hypervServers, hypervServersPaginated, hypervTopLevelDescendants, hypervVirtualMachine, hypervVirtualMachineAsyncRequestStatus, hypervVirtualMachineLevelFileInfo, hypervVirtualMachines, hypervVmDetail, installedVersionList, integration, inventoryRoot, inventorySubHierarchyRoot, investigationCsvDownloadLink, ipWhitelist, isAwsNativeEbsVolumeSnapshotRestorable, isAwsNativeRdsInstanceLaunchConfigurationValid, isAwsS3BucketNameAvailable, isAzureNativeManagedDiskSnapshotRestorable, isAzureNativeSqlDatabaseSnapshotPersistent, isAzureStorageAccountNameAvailable, isCloudNativeFileRecoveryFeasible, isIpmiEnabled, isLoggedIntoRubrikSupportPortal, isOrgServiceAccountDisabled, isReplaceNodeTprConfigured, isSfdcReachable, issue, issues, isTotpAckNecessaryForCluster, isTotpMandatoryInTargetVersion, isTriggerRcvGrsTprConfigured, isUpgradeAvailable, isUpgradeRecommended, isVMwareManagementEnabled, isZrsAvailableForLocation, jobInfo, k8sAppManifest, k8sCluster, k8sClusters, k8sNamespace, k8sNamespaces, k8sProtectionSetSnapshots, k8sSnapshotInfo, knowledgeBaseArticle, kubernetesCluster, kubernetesClusters, kubernetesProtectionSet, kubernetesProtectionSets, lambdaSettings, ldapAuthorizedPrincipalConnection, ldapIntegrationConnection, ldapPrincipalConnection, legalHoldSnapshotsForSnappable, licensesForClusterProductSummary, linuxFileset, listO365Apps, lockoutConfig, lookupAccount, m365DayToDayModeBackupStats, m365DayToDayModeStats, m365DirectoryObjectAttributes, m365LicenseEntitlement, m365OnboardingModeBackupStats, m365OnboardingModeStats, m365OrgBackupLocations, m365OrgOperationModes, m365Regions, managedVolume, managedVolumeInventoryStats, managedVolumeLiveMounts, managedVolumes, maxProtectedAppsCount, mfaSetting, minimumCdmVersionForFeatureSet, mongoBulkRecoverableRanges, mongoCollection, mongoCollections, mongoDatabase, mongoDatabases, mongodbBulkRecoverableRange, mongodbCollection, mongodbCollectionRecoverableRange, mongodbCollections, mongodbDatabase, mongodbDatabases, mongodbSource, mongodbSources, mongoRecoverableRanges, mongoSource, mongoSources, mosaicBulkRecoveryRange, mosaicSnapshots, mosaicStores, mosaicVersions, mssqlAvailabilityGroup, mssqlAvailabilityGroupDatabaseVirtualGroups, mssqlAvailabilityGroupVirtualGroups, mssqlCompatibleInstances, mssqlDatabase, mssqlDatabaseLiveMounts, mssqlDatabaseMissedRecoverableRanges, mssqlDatabaseMissedSnapshots, mssqlDatabaseRestoreEstimate, mssqlDatabases, mssqlDefaultProperties, mssqlDefaultPropertiesOnCluster, mssqlInstance, mssqlJobStatus, mssqlLogShippingTargets, mssqlRecoverableRanges, mssqlTopLevelDescendants, nasFileset, nasNamespace, nasNamespaces, nasShare, nasSystem, nasSystems, nasTopLevelDescendants, nasVolume, ncdBackEndCapacity, ncdFrontEndCapacity, ncdObjectProtectionStatus, ncdVmImageUrl, networkThrottle, nfAnomalyResults, nfAnomalyResultsGrouped, nodeRemovalCancelPermission, nodeToReplace, nodeTunnelStatuses, nutanixBrowseSnapshot, nutanixCategory, nutanixCategoryValue, nutanixCluster, nutanixClusterAsyncRequestStatus, nutanixClusterContainers, nutanixClusterNetworks, nutanixClusters, nutanixMounts, nutanixPrismCentral, nutanixPrismCentrals, nutanixSnapshotDetail, nutanixSnapshotVdisks, nutanixTopLevelDescendants, nutanixVm, nutanixVmAsyncRequestStatus, nutanixVmMissedSnapshots, nutanixVms, o365Calendar, o365Consumption, o365Groups, o365License, o365Mailbox, o365Mailboxes, o365ObjectAncestors, o365Onedrive, o365Onedrives, o365Org, o365OrgAtSnappableLevel, o365Orgs, o365OrgSummaries, o365ServiceAccount, o365ServiceStatus, o365SharepointDrive, o365SharepointDrives, o365SharepointList, o365SharepointLists, o365SharepointObjectList, o365SharepointObjects, o365SharepointObjectsNew, o365SharepointSite, o365SharepointSites, o365Site, o365Sites, o365StorageStats, o365Team, o365TeamChannels, o365TeamConversationsFolderID, o365TeamPostedBy, o365Teams, o365User, o365UserObjects, oauthCodesForEdgeReg, objectFiles, objectTypeAccessSummary, oracleAcoExampleDownloadLink, oracleAcoParameters, oracleDatabase, oracleDatabaseAsyncRequestDetails, oracleDatabaseLogBackupConfig, oracleDatabases, oracleDataGuardGroup, oracleHost, oracleHostLogBackupConfig, oracleLiveMounts, oracleMissedRecoverableRanges, oracleMissedSnapshots, oraclePdbDetails, oracleRac, oracleRacLogBackupConfig, oracleRecoverableRanges, oracleTopLevelDescendants, org, orgs, orgSecurityPolicy, orgsForPrincipal, overallRansomwareInvestigationSummary, passkeyConfig, passkeyInfo, passwordComplexityPolicy, pendingAction, phoenixRolloutProgress, physicalHost, physicalHosts, pipelineHealthForTimeRange, polarisInventorySubHierarchyRoot, polarisSnapshot, policies, policy, policyDetails, policyObj, policyObjectUsages, policyObjs, prechecksStatus, prechecksStatusWithNextJobInfo, privateContainerRegistry, processedRansomwareInvestigationWorkloadCount, productDocumentation, protectedObjectsConnection, protectedVolumesCount, queryDatastoreFreespaceThresholds, radarClusterConnection, ransomwareDetectionWorkloadLocations, ransomwareInvestigationAnalysisSummary, ransomwareInvestigationEnablement, ransomwareResult, ransomwareResultOpt, ransomwareResults, ransomwareResultsGrouped, rcsArchivalLocationsConsumptionStats, rcvAccountEntitlement, rdsInstanceDetailsFromAws, removedNodeDetails, replicationIncomingStats, replicationNetworkThrottleBypass, replicationNetworkThrottleBypassById, replicationOutgoingStats, replicationPairs, reportData, roleTemplates, s3BucketStateForRecovery, sapHanaDatabase, sapHanaDatabases, sapHanaLogSnapshot, sapHanaLogSnapshots, sapHanaRecoverableRange, sapHanaRecoverableRanges, sapHanaSystem, sapHanaSystems, scheduledReport, scheduledReports, searchAzureAdSnapshot, searchFileByPrefix, searchHost, searchNutanixVm, searchSnappableConnection, searchSnappableVersionedFiles, serviceAccounts, shareFileset, sharepointSiteDescendants, sharepointSiteSearch, slaAuditDetail, slaConflictObjects, slaDomain, slaDomains, slaManagedVolume, slaManagedVolumes, smbConfiguration, smbDomains, snappableConnection, snappableContactSearch, snappableEmailSearch, snappableEventSearch, snappableGroupByConnection, snappableOnedriveSearch, snappableSharepointDriveSearch, snappableSharepointListSearch, snappablesWithLegalHoldSnapshotsSummary, snappableTeamsConversationsSearch, snappableTeamsDriveSearch, snapshot, snapshotEmailSearch, snapshotEventSearch, snapshotFilesDelta, snapshotFilesDeltaV2, snapshotOfASnappableConnection, snapshotOfSnappablesConnection, snapshotOnedriveSearch, snapshotResults, snapshotsForUnmanagedObject, snapshotSharepointDriveSearch, snmpConfigurations, snoozedDirectories, sonarContentReport, sonarReport, sonarReportRow, sonarUserGroups, sonarUsers, supportBundle, supportUserAccesses, syslogExportRules, tableFilters, target, targetMapping, targets, taskchain, taskDetailConnection, taskDetailGroupByConnection, teamChannelNameAvailable, threatHuntDetail, threatHuntResult, threatHunts, threatHuntSummary, totpConfigStatus, tprStatusForNodeRemoval, tunnelStatus, uniqueHypervServersCount, uniqueVcdCount, unmanagedObjects, upgradeStatus, userActivities, userActivityTimeline, userAnalyzerAccess, userAuditConnection, userDetail, userFile, userFileActivityTimeline, userGroups, userNotifications, userSessionManagementConfig, userSettings, usersInCurrentAndDescendantOrganization, validateAwsNativeRdsClusterNameForExport, validateAwsNativeRdsInstanceNameForExport, validateAzureCloudAccountExocomputeConfigurations, validateAzureNativeSqlDatabaseDbNameForExport, validateAzureNativeSqlManagedInstanceDbNameForExport, validateClusterLicenseCapacity, validateCreateAwsClusterInput, validateCreateAzureClusterInput, validateOrgName, vappSnapshotInstantRecoveryOptions, vappTemplateSnapshotExportOptions, vcdVappVms, vCenterAdvancedTagPreview, vcenterAsyncRequestStatus, vCenterHotAddBandwidth, vCenterHotAddNetwork, vCenterHotAddProxyVmsV2, vCenterNetworks, vCenterNumProxiesNeeded, vCenterPreAddInfo, vDiskMountableNutanixVms, verifySlaWithReplicationToCluster, verifyTotp, vmwareMissedRecoverableRanges, vmwareRecoverableRanges, volumeGroupMounts, vSphereComputeCluster, vSphereComputeClusters, vSphereDatacenter, vSphereDatastore, vSphereDatastoreCluster, vSphereDatastoreClusters, vSphereDatastoreConnection, vSphereFolder, vSphereFolders, vSphereHost, vSphereHostConnection, vSphereHostDetails, vSphereHostsByFids, vSphereLiveMounts, vSphereMount, vSphereMountConnection, vSphereNetwork, vSphereResourcePool, vSphereRootRecoveryHierarchy, vSphereTag, vSphereTagCategory, vSphereTopLevelDescendantsConnection, vSphereVCenter, vSphereVCenterConnection, vSphereVMAsyncRequestStatus, vsphereVMMissedRecoverableRange, vSphereVmNew, vSphereVmNewConnection, vsphereVMRecoverableRange, vsphereVMRecoverableRangeInBatch, vsphereVmwareCdpLiveInfo, windowsCluster, windowsFileset, workloadAlertSetting, workloadAnomalies, workloadForeverId</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: True (ByPropertyName, ByValue) Accept wildcard characters: False ```</maml:para>
          <maml:para>### -Operation API Operation.</maml:para>
          <maml:para>```yaml Type: String Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### -RemoveField remove fields to the set of fields that are selected for retrieval.</maml:para>
          <maml:para>```yaml Type: String[] Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### -ValidPatchSet Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          <maml:para>```yaml Type: SwitchParameter Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### -Var Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          <maml:para>```yaml Type: Object Parameter Sets: (All) Aliases:</maml:para>
          <maml:para>Required: False Position: 1 Default value: None Accept pipeline input: True (ByPropertyName, ByValue) Accept wildcard characters: False ```</maml:para>
          <maml:para>### -ProgressAction {{ Fill ProgressAction Description }}</maml:para>
          <maml:para>```yaml Type: ActionPreference Parameter Sets: (All) Aliases: proga</maml:para>
          <maml:para>Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```</maml:para>
          <maml:para>### CommonParameters This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).</maml:para>
          <maml:para>## INPUTS</maml:para>
          <maml:para>### System.Nullable`1[[RubrikSecurityCloud.Types.SchemaMeta+GqlQueryName, RubrikSecurityCloud.Schema, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]</maml:para>
          <maml:para>### RubrikSecurityCloud.Types.SchemaMeta+ApiDomainName</maml:para>
          <maml:para>### RubrikSecurityCloud.RscQuery</maml:para>
          <maml:para>### System.Object</maml:para>
          <maml:para>## OUTPUTS</maml:para>
          <maml:para>### System.Object ## NOTES</maml:para>
          <maml:para>## RELATED LINKS</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false"></command:parameterValue>
        <dev:type>
          <maml:name></maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 9 operations in the 'Account' API domain: CurrentUser, CurrentUserLoginContext, EnabledFeatures, Id, Lookup, Owners, Products, Settings, or Users.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryAccount creates a new query object for operations in the 'Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 9 operations in the 'Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CurrentUser, CurrentUserLoginContext, EnabledFeatures, Id, Lookup, Owners, Products, Settings, or Users. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAccount -CurrentUser).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAccount -CurrentUser).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CurrentUser</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CurrentUserLoginContext</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EnabledFeatures</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Id</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Lookup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Owners</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Products</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Settings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Users</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: CurrentUser
              
             $query = New-RscQueryAccount -CurrentUser
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: User</dev:code>
        <dev:remarks>
          <maml:para>Runs the CurrentUser operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: CurrentUserLoginContext
              
             $query = New-RscQueryAccount -CurrentUserLoginContext
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UserLoginContext</dev:code>
        <dev:remarks>
          <maml:para>Runs the CurrentUserLoginContext operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: EnabledFeatures
              
             $query = New-RscQueryAccount -EnabledFeatures
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AllEnabledFeaturesForAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnabledFeatures operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: Id
              
             $query = New-RscQueryAccount -Id
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the Id operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: Lookup
              
             $query = New-RscQueryAccount -Lookup
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 includeExpiryDate = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LookupAccountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Lookup operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: Owners
              
             $query = New-RscQueryAccount -Owners
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;User&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Owners operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: Products
              
             $query = New-RscQueryAccount -Products
              
             # REQUIRED
             $query.Var.nameFilter = @(
                 $someProductName # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProductName]) for enum values.
             )
             # REQUIRED
             $query.Var.typeFilter = @(
                 $someProductType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProductType]) for enum values.
             )
             # REQUIRED
             $query.Var.stateFilter = @(
                 $someProductState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProductState]) for enum values.
             )
             # OPTIONAL
             $query.Var.startDateArg = $someDateTime
             # OPTIONAL
             $query.Var.endDateArg = $someDateTime
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AccountProduct&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Products operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: Settings
              
             $query = New-RscQueryAccount -Settings
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AccountSetting</dev:code>
        <dev:remarks>
          <maml:para>Runs the Settings operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Account
             # API Operation: Users
              
             $query = New-RscQueryAccount -Users
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;User&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Users operation of the 'Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryActiveDirectory</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryActiveDirectory</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 5 operations in the 'Active Directory' API domain: Domain, DomainController, DomainControllers, Domains, or SearchSnapshots.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryActiveDirectory creates a new query object for operations in the 'Active Directory' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 5 operations in the 'Active Directory' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Domain, DomainController, DomainControllers, Domains, or SearchSnapshots. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryActiveDirectory -Domain).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryActiveDirectory -Domain).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryActiveDirectory</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Domain</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DomainController</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DomainControllers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Domains</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SearchSnapshots</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: Domain
              
             $query = New-RscQueryActiveDirectory -Domain
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActiveDirectoryDomain</dev:code>
        <dev:remarks>
          <maml:para>Runs the Domain operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: DomainController
              
             $query = New-RscQueryActiveDirectory -DomainController
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActiveDirectoryDomainController</dev:code>
        <dev:remarks>
          <maml:para>Runs the DomainController operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: DomainControllers
              
             $query = New-RscQueryActiveDirectory -DomainControllers
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActiveDirectoryDomainControllerConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the DomainControllers operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: Domains
              
             $query = New-RscQueryActiveDirectory -Domains
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActiveDirectoryDomainConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Domains operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActiveDirectory
             # API Operation: SearchSnapshots
              
             $query = New-RscQueryActiveDirectory -SearchSnapshots
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.id = $someString
             # OPTIONAL
             $query.Var.snapshotAfterDate = $someDateTime
             # OPTIONAL
             $query.Var.snapshotBeforeDate = $someDateTime
             # REQUIRED
             $query.Var.name = $someString
             # OPTIONAL
             $query.Var.activeDirectoryObjectType = $someActiveDirectoryObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActiveDirectoryObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActiveDirectorySnappableSearchResponseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SearchSnapshots operation of the 'Active Directory' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryActivitySeries</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryActivitySeries</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Activity series' API domain: ActivitySeries, List, UserFileTimeline, or UserTimeline.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryActivitySeries creates a new query object for operations in the 'Activity series' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Activity series' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ActivitySeries, List, UserFileTimeline, or UserTimeline. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryActivitySeries -ActivitySeries).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryActivitySeries -ActivitySeries).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryActivitySeries</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ActivitySeries</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">List</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UserFileTimeline</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UserTimeline</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActivitySeries
             # API Operation: ActivitySeries
              
             $query = New-RscQueryActivitySeries -ActivitySeries
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 activitySeriesId = $someString
                 # OPTIONAL
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActivitySeries</dev:code>
        <dev:remarks>
          <maml:para>Runs the ActivitySeries operation of the 'Activity series' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActivitySeries
             # API Operation: List
              
             $query = New-RscQueryActivitySeries -List
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someActivitySeriesSortField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeriesSortField]) for enum values.
             # OPTIONAL
             $query.Var.filters = @{
                 # OPTIONAL
                 lastActivityStatus = @(
                     $someEventStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventStatus]) for enum values.
                 )
                 # OPTIONAL
                 lastActivityType = @(
                     $someEventType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventType]) for enum values.
                 )
                 # OPTIONAL
                 severity = @(
                     $someEventSeverity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventSeverity]) for enum values.
                 )
                 # OPTIONAL
                 objectName = $someString
                 # OPTIONAL
                 objectType = @(
                     $someEventObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventObjectType]) for enum values.
                 )
                 # OPTIONAL
                 startTimeGt = $someDateTime
                 # OPTIONAL
                 startTimeLt = $someDateTime
                 # OPTIONAL
                 lastUpdatedTimeGt = $someDateTime
                 # OPTIONAL
                 lastUpdatedTimeLt = $someDateTime
                 # OPTIONAL
                 clusterId = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterType = @(
                     $someEventClusterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventClusterType]) for enum values.
                 )
                 # OPTIONAL
                 objectFid = @(
                     $someString
                 )
                 # OPTIONAL
                 ancestorId = $someString
                 # OPTIONAL
                 searchTerm = $someString
                 # OPTIONAL
                 orgIds = @(
                     $someString
                 )
                 # OPTIONAL
                 userIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActivitySeriesConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the List operation of the 'Activity series' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActivitySeries
             # API Operation: UserFileTimeline
              
             $query = New-RscQueryActivitySeries -UserFileTimeline
              
             # REQUIRED
             $query.Var.userId = $someString
             # OPTIONAL
             $query.Var.resource = @{
                 # OPTIONAL
                 snappableFid = $someString
                 # OPTIONAL
                 snapshotFid = $someString
             }
             # REQUIRED
             $query.Var.nativePath = $someString
             # REQUIRED
             $query.Var.startDay = $someString
             # REQUIRED
             $query.Var.timezone = $someString
             # REQUIRED
             $query.Var.timeGranularity = $someTimeGranularity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeGranularity]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActivityTimelineResultConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the UserFileTimeline operation of the 'Activity series' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ActivitySeries
             # API Operation: UserTimeline
              
             $query = New-RscQueryActivitySeries -UserTimeline
              
             # REQUIRED
             $query.Var.userId = $someString
             # REQUIRED
             $query.Var.startDay = $someString
             # REQUIRED
             $query.Var.timezone = $someString
             # REQUIRED
             $query.Var.uniqueActivities = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ActivityTimelineResultConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the UserTimeline operation of the 'Activity series' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryArchival</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryArchival</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'Archival' API domain: HierarchyObjectRecoveryTarget, IsTotpMandatoryInTargetVersion, RcsLocationsConsumptionStats, StorageUsage, Target, TargetMapping, TargetMappings, or Targets.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryArchival creates a new query object for operations in the 'Archival' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Archival' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: HierarchyObjectRecoveryTarget, IsTotpMandatoryInTargetVersion, RcsLocationsConsumptionStats, StorageUsage, Target, TargetMapping, TargetMappings, or Targets. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryArchival -HierarchyObjectRecoveryTarget).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryArchival -HierarchyObjectRecoveryTarget).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryArchival</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">HierarchyObjectRecoveryTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsTotpMandatoryInTargetVersion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RcsLocationsConsumptionStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StorageUsage</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Target</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TargetMapping</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TargetMappings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Targets</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: HierarchyObjectRecoveryTarget
              
             $query = New-RscQueryArchival -HierarchyObjectRecoveryTarget
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HierarchyObject</dev:code>
        <dev:remarks>
          <maml:para>Runs the HierarchyObjectRecoveryTarget operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: IsTotpMandatoryInTargetVersion
              
             $query = New-RscQueryArchival -IsTotpMandatoryInTargetVersion
              
             # REQUIRED
             $query.Var.version = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsTotpMandatoryInTargetVersion operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: RcsLocationsConsumptionStats
              
             $query = New-RscQueryArchival -RcsLocationsConsumptionStats
              
             # REQUIRED
             $query.Var.rcsAzureTargetConsumptionStatsRequest = @{
                 # REQUIRED
                 locationIds = @(
                     $someString
                 )
                 # REQUIRED
                 metricName = $someRcsConsumptionMetricNameType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsConsumptionMetricNameType]) for enum values.
                 # OPTIONAL
                 doForecasting = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RcsAzureArchivalLocationsConsumptionStatsOutput</dev:code>
        <dev:remarks>
          <maml:para>Runs the RcsLocationsConsumptionStats operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: StorageUsage
              
             $query = New-RscQueryArchival -StorageUsage
              
             # REQUIRED
             $query.Var.input = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;ArchivalStorageUsage&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the StorageUsage operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: Target
              
             $query = New-RscQueryArchival -Target
              
             # REQUIRED
             $query.Var.input = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Target</dev:code>
        <dev:remarks>
          <maml:para>Runs the Target operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: TargetMapping
              
             $query = New-RscQueryArchival -TargetMapping
              
             # REQUIRED
             $query.Var.targetMappingId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetMapping</dev:code>
        <dev:remarks>
          <maml:para>Runs the TargetMapping operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: TargetMappings
              
             $query = New-RscQueryArchival -TargetMappings
              
             # OPTIONAL
             $query.Var.sortBy = $someArchivalGroupQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ArchivalGroupQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someTargetMappingQueryFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TargetMappingQueryFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
                     # OPTIONAL
                     textList = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.contextFilter = $someContextFilterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ContextFilterTypeEnum]) for enum values.
             # OPTIONAL
             $query.Var.isRcsStatsRequired = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;TargetMapping&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the TargetMappings operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Archival
             # API Operation: Targets
              
             $query = New-RscQueryArchival -Targets
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someArchivalLocationQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ArchivalLocationQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someTargetQueryFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TargetQueryFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
                     # OPTIONAL
                     textList = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.contextFilter = $someContextFilterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ContextFilterTypeEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TargetConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Targets operation of the 'Archival' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryAws</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryAws</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 31 operations in the 'AWS' API domain: ArtifactsToDelete, AvailabilityZonesByRegion, CdmVersions, CloudAccountConfigs, CloudAccountListSecurityGroups, CloudAccountListSubnets, CloudAccountListVpcs, CloudAccountWithFeatures, CloudAccountsWithFeatures, ComputeSettings, DbParameterGroupsByRegion, DbSubnetGroupsByRegion, Ec2KeyPairsByRegion, ExocomputeConfigs, ExocomputeGetClusterConnectionInfo, InstanceProfileNames, IsS3BucketNameAvailable, KmsEncryptionKeysByRegion, OptionGroupsByRegion, PermissionPolicies, RdsInstanceDetails, Regions, S3BucketStateForRecovery, S3Buckets, S3BucketsDetails, SupportedEksVersions, SupportedRdsDatabaseInstanceClasses, TrustPolicy, ValidateCreateClusterInput, Vpcs, or VpcsByRegion.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryAws creates a new query object for operations in the 'AWS' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 31 operations in the 'AWS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ArtifactsToDelete, AvailabilityZonesByRegion, CdmVersions, CloudAccountConfigs, CloudAccountListSecurityGroups, CloudAccountListSubnets, CloudAccountListVpcs, CloudAccountWithFeatures, CloudAccountsWithFeatures, ComputeSettings, DbParameterGroupsByRegion, DbSubnetGroupsByRegion, Ec2KeyPairsByRegion, ExocomputeConfigs, ExocomputeGetClusterConnectionInfo, InstanceProfileNames, IsS3BucketNameAvailable, KmsEncryptionKeysByRegion, OptionGroupsByRegion, PermissionPolicies, RdsInstanceDetails, Regions, S3BucketStateForRecovery, S3Buckets, S3BucketsDetails, SupportedEksVersions, SupportedRdsDatabaseInstanceClasses, TrustPolicy, ValidateCreateClusterInput, Vpcs, or VpcsByRegion. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAws -ArtifactsToDelete).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAws -ArtifactsToDelete).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryAws</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ArtifactsToDelete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AvailabilityZonesByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CdmVersions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountConfigs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountListSecurityGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountListSubnets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountListVpcs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountWithFeatures</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountsWithFeatures</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ComputeSettings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DbParameterGroupsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DbSubnetGroupsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ec2KeyPairsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExocomputeConfigs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExocomputeGetClusterConnectionInfo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InstanceProfileNames</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsS3BucketNameAvailable</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">KmsEncryptionKeysByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OptionGroupsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PermissionPolicies</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RdsInstanceDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Regions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">S3BucketStateForRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">S3Buckets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">S3BucketsDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SupportedEksVersions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SupportedRdsDatabaseInstanceClasses</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TrustPolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateCreateClusterInput</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vpcs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VpcsByRegion</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ArtifactsToDelete
              
             $query = New-RscQueryAws -ArtifactsToDelete
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 awsNativeId = $someString
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsArtifactsToDelete</dev:code>
        <dev:remarks>
          <maml:para>Runs the ArtifactsToDelete operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: AvailabilityZonesByRegion
              
             $query = New-RscQueryAws -AvailabilityZonesByRegion
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AvailabilityZonesByRegion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CdmVersions
              
             $query = New-RscQueryAws -CdmVersions
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 region = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsCdmVersion&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmVersions operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CloudAccountConfigs
              
             $query = New-RscQueryAws -CloudAccountConfigs
              
             # REQUIRED
             $query.Var.awsCloudAccountsArg = @{
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # REQUIRED
                 statusFilters = @(
                     $someCloudAccountStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountStatus]) for enum values.
                 )
                 # OPTIONAL
                 awsAdminAccountFilter = $someString
                 # OPTIONAL
                 columnSearchFilter = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsFeatureConfig&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountConfigs operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CloudAccountListSecurityGroups
              
             $query = New-RscQueryAws -CloudAccountListSecurityGroups
              
             # REQUIRED
             $query.Var.cloudAccountUuid = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
             # REQUIRED
             $query.Var.vpcID = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsCloudAccountListSecurityGroupsResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountListSecurityGroups operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CloudAccountListSubnets
              
             $query = New-RscQueryAws -CloudAccountListSubnets
              
             # REQUIRED
             $query.Var.cloudAccountUuid = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
             # REQUIRED
             $query.Var.vpcID = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsCloudAccountListSubnetsResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountListSubnets operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CloudAccountListVpcs
              
             $query = New-RscQueryAws -CloudAccountListVpcs
              
             # REQUIRED
             $query.Var.cloudAccountUuid = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsCloudAccountListVpcResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountListVpcs operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CloudAccountWithFeatures
              
             $query = New-RscQueryAws -CloudAccountWithFeatures
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
             # REQUIRED
             $query.Var.awsCloudAccountArg = @{
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsCloudAccountWithFeatures</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountWithFeatures operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: CloudAccountsWithFeatures
              
             $query = New-RscQueryAws -CloudAccountsWithFeatures
              
             # REQUIRED
             $query.Var.awsCloudAccountsArg = @{
                 # REQUIRED
                 feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 # REQUIRED
                 statusFilters = @(
                     $someCloudAccountStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountStatus]) for enum values.
                 )
                 # OPTIONAL
                 awsAdminAccountFilter = $someString
                 # OPTIONAL
                 columnSearchFilter = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsCloudAccountWithFeatures&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountsWithFeatures operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ComputeSettings
              
             $query = New-RscQueryAws -ComputeSettings
              
             # REQUIRED
             $query.Var.computeSettingId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsComputeSettings</dev:code>
        <dev:remarks>
          <maml:para>Runs the ComputeSettings operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: DbParameterGroupsByRegion
              
             $query = New-RscQueryAws -DbParameterGroupsByRegion
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.dbEngine = $someAwsNativeRdsDbEngine # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbEngine]) for enum values.
             # REQUIRED
             $query.Var.dbEngineVersion = $someString
             # OPTIONAL
             $query.Var.rdsType = $someAwsNativeRdsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;DbParameterGroup&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DbParameterGroupsByRegion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: DbSubnetGroupsByRegion
              
             $query = New-RscQueryAws -DbSubnetGroupsByRegion
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;SubnetGroup&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DbSubnetGroupsByRegion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: Ec2KeyPairsByRegion
              
             $query = New-RscQueryAws -Ec2KeyPairsByRegion
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Ec2KeyPairsByRegion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ExocomputeConfigs
              
             $query = New-RscQueryAws -ExocomputeConfigs
              
             # REQUIRED
             $query.Var.awsNativeAccountIdOrNamePrefix = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsExocomputeConfig&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExocomputeConfigs operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ExocomputeGetClusterConnectionInfo
              
             $query = New-RscQueryAws -ExocomputeGetClusterConnectionInfo
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterName = $someString
                 # REQUIRED
                 exocomputeConfigId = $someString
                 # OPTIONAL
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsExocomputeGetClusterConnectionInfoReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExocomputeGetClusterConnectionInfo operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: InstanceProfileNames
              
             $query = New-RscQueryAws -InstanceProfileNames
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
             # REQUIRED
             $query.Var.region = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the InstanceProfileNames operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: IsS3BucketNameAvailable
              
             $query = New-RscQueryAws -IsS3BucketNameAvailable
              
             # REQUIRED
             $query.Var.bucketName = $someString
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsS3BucketNameAvailable operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: KmsEncryptionKeysByRegion
              
             $query = New-RscQueryAws -KmsEncryptionKeysByRegion
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;KmsEncryptionKey&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the KmsEncryptionKeysByRegion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: OptionGroupsByRegion
              
             $query = New-RscQueryAws -OptionGroupsByRegion
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.dbEngine = $someAwsNativeRdsDbEngine # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbEngine]) for enum values.
             # REQUIRED
             $query.Var.dbEngineVersion = $someString
             # REQUIRED
             $query.Var.majorEngineVersion = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;OptionGroup&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the OptionGroupsByRegion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: PermissionPolicies
              
             $query = New-RscQueryAws -PermissionPolicies
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                 # OPTIONAL
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # OPTIONAL
                 featureSpecificDetails = @{
                     # OPTIONAL
                     ec2RecoveryRolePath = $someString
                 }
                 # OPTIONAL
                 featuresWithPermissionsGroups = @(
                     @{
                         # OPTIONAL
                         featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                         # OPTIONAL
                         permissionsGroups = @(
                             $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                         )
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;PermissionPolicy&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the PermissionPolicies operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: RdsInstanceDetails
              
             $query = New-RscQueryAws -RdsInstanceDetails
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.rdsInstanceName = $someString
             # OPTIONAL
             $query.Var.rdsDatabaseRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RdsInstanceDetailsFromAws</dev:code>
        <dev:remarks>
          <maml:para>Runs the RdsInstanceDetails operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: Regions
              
             $query = New-RscQueryAws -Regions
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsCloudAccountRegion&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Regions operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: S3BucketStateForRecovery
              
             $query = New-RscQueryAws -S3BucketStateForRecovery
              
             # REQUIRED
             $query.Var.bucketName = $someString
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetS3BucketStateForRecoveryReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the S3BucketStateForRecovery operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: S3Buckets
              
             $query = New-RscQueryAws -S3Buckets
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the S3Buckets operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: S3BucketsDetails
              
             $query = New-RscQueryAws -S3BucketsDetails
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # OPTIONAL
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;S3BucketDetails&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the S3BucketsDetails operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: SupportedEksVersions
              
             $query = New-RscQueryAws -SupportedEksVersions
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SupportedEksVersions operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: SupportedRdsDatabaseInstanceClasses
              
             $query = New-RscQueryAws -SupportedRdsDatabaseInstanceClasses
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.dbEngine = $someAwsNativeRdsDbEngine # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbEngine]) for enum values.
             # OPTIONAL
             $query.Var.dbEngineVersion = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SupportedRdsDatabaseInstanceClasses operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: TrustPolicy
              
             $query = New-RscQueryAws -TrustPolicy
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                 # REQUIRED
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # REQUIRED
                 awsNativeAccounts = @(
                     @{
                         # OPTIONAL
                         externalId = $someString
                         # REQUIRED
                         id = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsTrustPolicy</dev:code>
        <dev:remarks>
          <maml:para>Runs the TrustPolicy operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: ValidateCreateClusterInput
              
             $query = New-RscQueryAws -ValidateCreateClusterInput
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 isEsType = $someBoolean
                 # OPTIONAL
                 keepClusterOnFailure = $someBoolean
                 # OPTIONAL
                 region = $someString
                 # OPTIONAL
                 disableApiTermination = $someBoolean
                 # OPTIONAL
                 clusterConfig = @{
                     # OPTIONAL
                     userEmail = $someString
                     # OPTIONAL
                     adminPassword = $someString
                     # OPTIONAL
                     clusterName = $someString
                     # OPTIONAL
                     numNodes = $someInt
                     # OPTIONAL
                     dnsSearchDomains = @(
                         $someString
                     )
                     # OPTIONAL
                     dnsNameServers = @(
                         $someString
                     )
                     # OPTIONAL
                     ntpServers = @(
                         $someString
                     )
                     # OPTIONAL
                     azureEsConfig = @{
                         # OPTIONAL
                         storageAccount = $someString
                         # OPTIONAL
                         resourceGroup = $someString
                         # OPTIONAL
                         storageSecret = $someString
                         # OPTIONAL
                         containerName = $someString
                         # OPTIONAL
                         shouldCreateContainer = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                         # OPTIONAL
                         managedIdentity = @{
                             # OPTIONAL
                             name = $someString
                             # OPTIONAL
                             clientId = $someString
                             # OPTIONAL
                             resourceGroup = $someString
                         }
                     }
                     # OPTIONAL
                     awsEsConfig = @{
                         # OPTIONAL
                         bucketName = $someString
                         # OPTIONAL
                         shouldCreateBucket = $someBoolean
                         # OPTIONAL
                         enableObjectLock = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                     }
                 }
                 # OPTIONAL
                 vmConfig = @{
                     # OPTIONAL
                     cdmVersion = $someString
                     # OPTIONAL
                     nodeSizeGb = $someInt
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     tags = $someString
                     # OPTIONAL
                     imageId = $someString
                     # OPTIONAL
                     instanceProfileName = $someString
                     # OPTIONAL
                     cdmProduct = $someString
                     # OPTIONAL
                     vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values.
                     # OPTIONAL
                     securityGroups = @(
                         $someString
                     )
                     # OPTIONAL
                     instanceType = $someAwsInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsInstanceType]) for enum values.
                     # OPTIONAL
                     networkConfig = @(
                         @{
                             # OPTIONAL
                             availabilityZone = $someString
                             # OPTIONAL
                             subnet = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 validations = @(
                     $someClusterCreateValidations # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCreateValidations]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateCreateClusterInput operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: Vpcs
              
             $query = New-RscQueryAws -Vpcs
              
             # OPTIONAL
             $query.Var.awsAccountRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsVpc&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Vpcs operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Aws
             # API Operation: VpcsByRegion
              
             $query = New-RscQueryAws -VpcsByRegion
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsVpc&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the VpcsByRegion operation of the 'AWS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryAwsNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryAwsNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 19 operations in the 'AWS Native' API domain: Account, Accounts, AmiTypeForArchivedSnapshotExport, EbsVolume, EbsVolumes, EbsVolumesByName, Ec2Instance, Ec2Instances, Ec2InstancesByName, IsEbsVolumeSnapshotRestorable, IsRdsInstanceLaunchConfigurationValid, RdsExportDefaults, RdsInstance, RdsInstances, RdsPointInTimeRestoreWindow, Root, S3Bucket, ValidateRdsClusterNameForExport, or ValidateRdsInstanceNameForExport.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryAwsNative creates a new query object for operations in the 'AWS Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 19 operations in the 'AWS Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Account, Accounts, AmiTypeForArchivedSnapshotExport, EbsVolume, EbsVolumes, EbsVolumesByName, Ec2Instance, Ec2Instances, Ec2InstancesByName, IsEbsVolumeSnapshotRestorable, IsRdsInstanceLaunchConfigurationValid, RdsExportDefaults, RdsInstance, RdsInstances, RdsPointInTimeRestoreWindow, Root, S3Bucket, ValidateRdsClusterNameForExport, or ValidateRdsInstanceNameForExport. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAwsNative -Account).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAwsNative -Account).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryAwsNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Account</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Accounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AmiTypeForArchivedSnapshotExport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EbsVolume</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EbsVolumes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EbsVolumesByName</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ec2Instance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ec2Instances</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ec2InstancesByName</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsEbsVolumeSnapshotRestorable</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsRdsInstanceLaunchConfigurationValid</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RdsExportDefaults</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RdsInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RdsInstances</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RdsPointInTimeRestoreWindow</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Root</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">S3Bucket</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateRdsClusterNameForExport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateRdsInstanceNameForExport</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: Account
              
             $query = New-RscQueryAwsNative -Account
              
             # REQUIRED
             $query.Var.awsNativeAccountRubrikId = $someString
             # REQUIRED
             $query.Var.awsNativeProtectionFeature = $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeAccount</dev:code>
        <dev:remarks>
          <maml:para>Runs the Account operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: Accounts
              
             $query = New-RscQueryAwsNative -Accounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAwsNativeAccountSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeAccountSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.accountFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 cloudTypeFilter = @{
                     # REQUIRED
                     cloudTypes = @(
                         $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values.
                     )
                 }
             }
             # OPTIONAL
             $query.Var.authorizedOperationFilter = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
             # REQUIRED
             $query.Var.awsNativeProtectionFeature = $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeAccountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Accounts operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: AmiTypeForArchivedSnapshotExport
              
             $query = New-RscQueryAwsNative -AmiTypeForArchivedSnapshotExport
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 destinationRegionId = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
                 # REQUIRED
                 destinationAwsAccountRubrikId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AmiTypeForAwsNativeArchivedSnapshotExportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AmiTypeForArchivedSnapshotExport operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: EbsVolume
              
             $query = New-RscQueryAwsNative -EbsVolume
              
             # REQUIRED
             $query.Var.ebsVolumeRubrikId = $someString
             # OPTIONAL
             $query.Var.includeSecurityMetadata = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeEbsVolume</dev:code>
        <dev:remarks>
          <maml:para>Runs the EbsVolume operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: EbsVolumes
              
             $query = New-RscQueryAwsNative -EbsVolumes
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAwsNativeEbsVolumeSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEbsVolumeSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.ebsVolumeFilters = @{
                 # OPTIONAL
                 nameOrIdSubstringFilter = @{
                     # REQUIRED
                     nameOrIdSubstring = $someString
                 }
                 # OPTIONAL
                 fileRecoveryStatusFilter = @{
                     # REQUIRED
                     statuses = @(
                         $someAwsNativeFileRecoveryStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeFileRecoveryStatus]) for enum values.
                     )
                 }
                 # OPTIONAL
                 typeFilter = @{
                     # REQUIRED
                     ebsVolumeTypes = @(
                         $someAwsNativeEbsVolumeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEbsVolumeType]) for enum values.
                     )
                 }
                 # OPTIONAL
                 attachedInstanceFilter = @{
                     # REQUIRED
                     ec2InstanceIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 accountFilter = @{
                     # REQUIRED
                     accountIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 unaccessedFilter = @{
                     # REQUIRED
                     unaccessed = $someBoolean
                 }
                 # OPTIONAL
                 sensitivityStatusFilter = @{
                     # REQUIRED
                     sensitivityStatuses = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 protectionStatusFilter = @{
                     # REQUIRED
                     protectionStatuses = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 tagFilter = @{
                     # REQUIRED
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 orgFilter = @{
                     # REQUIRED
                     orgIds = @(
                         $someString
                     )
                 }
             }
             # OPTIONAL
             $query.Var.includeSecurityMetadata = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeEbsVolumeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the EbsVolumes operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: EbsVolumesByName
              
             $query = New-RscQueryAwsNative -EbsVolumesByName
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAwsNativeEbsVolumeSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEbsVolumeSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # REQUIRED
             $query.Var.ebsVolumeName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeEbsVolumeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the EbsVolumesByName operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: Ec2Instance
              
             $query = New-RscQueryAwsNative -Ec2Instance
              
             # REQUIRED
             $query.Var.ec2InstanceRubrikId = $someString
             # OPTIONAL
             $query.Var.includeSecurityMetadata = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeEc2Instance</dev:code>
        <dev:remarks>
          <maml:para>Runs the Ec2Instance operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: Ec2Instances
              
             $query = New-RscQueryAwsNative -Ec2Instances
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAwsNativeEc2InstanceSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEc2InstanceSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.descendantTypeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.ec2InstanceFilters = @{
                 # OPTIONAL
                 nameOrIdSubstringFilter = @{
                     # REQUIRED
                     nameOrIdSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 accountFilter = @{
                     # REQUIRED
                     accountIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 fileRecoveryStatusFilter = @{
                     # REQUIRED
                     statuses = @(
                         $someAwsNativeFileRecoveryStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeFileRecoveryStatus]) for enum values.
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 unaccessedFilter = @{
                     # REQUIRED
                     unaccessed = $someBoolean
                 }
                 # OPTIONAL
                 sensitivityStatusFilter = @{
                     # REQUIRED
                     sensitivityStatuses = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 protectionStatusFilter = @{
                     # REQUIRED
                     protectionStatuses = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 typeFilter = @{
                     # REQUIRED
                     ec2InstanceTypes = @(
                         $someAwsNativeEc2InstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEc2InstanceType]) for enum values.
                     )
                 }
                 # OPTIONAL
                 vpcFilter = @{
                     # REQUIRED
                     vpcIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 tagFilter = @{
                     # REQUIRED
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 appProtectionStatusFilter = @{
                     # REQUIRED
                     isProtectionSetup = $someBoolean
                 }
                 # OPTIONAL
                 rbsStatusFilter = @{
                     # REQUIRED
                     status = $someCloudInstanceRbsConnectionStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudInstanceRbsConnectionStatus]) for enum values.
                 }
                 # OPTIONAL
                 orgFilter = @{
                     # REQUIRED
                     orgIds = @(
                         $someString
                     )
                 }
             }
             # OPTIONAL
             $query.Var.includeSecurityMetadata = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeEc2InstanceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Ec2Instances operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: Ec2InstancesByName
              
             $query = New-RscQueryAwsNative -Ec2InstancesByName
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAwsNativeEc2InstanceSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEc2InstanceSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # REQUIRED
             $query.Var.ec2InstanceName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeEc2InstanceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Ec2InstancesByName operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: IsEbsVolumeSnapshotRestorable
              
             $query = New-RscQueryAwsNative -IsEbsVolumeSnapshotRestorable
              
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: IsVolumeSnapshotRestorableReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsEbsVolumeSnapshotRestorable operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: IsRdsInstanceLaunchConfigurationValid
              
             $query = New-RscQueryAwsNative -IsRdsInstanceLaunchConfigurationValid
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.dbEngine = $someAwsNativeRdsDbEngine # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbEngine]) for enum values.
             # REQUIRED
             $query.Var.dbEngineVersion = $someString
             # REQUIRED
             $query.Var.dbClass = $someAwsNativeRdsDbInstanceClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbInstanceClass]) for enum values.
             # OPTIONAL
             $query.Var.databaseInstanceClass = $someString
             # OPTIONAL
             $query.Var.primaryAz = $someString
             # OPTIONAL
             $query.Var.storageType = $someAwsNativeRdsStorageType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsStorageType]) for enum values.
             # REQUIRED
             $query.Var.isMultiAz = $someBoolean
             # OPTIONAL
             $query.Var.kmsKeyId = $someString
             # OPTIONAL
             $query.Var.iops = $someInt
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsRdsInstanceLaunchConfigurationValid operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: RdsExportDefaults
              
             $query = New-RscQueryAwsNative -RdsExportDefaults
              
             # REQUIRED
             $query.Var.rdsInstanceRubrikId = $someString
             # OPTIONAL
             $query.Var.snapshotId = $someString
             # REQUIRED
             $query.Var.isPointInTime = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RdsInstanceExportDefaults</dev:code>
        <dev:remarks>
          <maml:para>Runs the RdsExportDefaults operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: RdsInstance
              
             $query = New-RscQueryAwsNative -RdsInstance
              
             # REQUIRED
             $query.Var.rdsInstanceRubrikId = $someString
             # OPTIONAL
             $query.Var.includeSecurityMetadata = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeRdsInstance</dev:code>
        <dev:remarks>
          <maml:para>Runs the RdsInstance operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: RdsInstances
              
             $query = New-RscQueryAwsNative -RdsInstances
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAwsNativeRdsInstanceSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsInstanceSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.rdsInstanceFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 accountFilter = @{
                     # REQUIRED
                     accountIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 vpcFilter = @{
                     # REQUIRED
                     vpcIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 unaccessedFilter = @{
                     # REQUIRED
                     unaccessed = $someBoolean
                 }
                 # OPTIONAL
                 sensitivityStatusFilter = @{
                     # REQUIRED
                     sensitivityStatuses = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 protectionStatusFilter = @{
                     # REQUIRED
                     protectionStatuses = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 tagFilter = @{
                     # REQUIRED
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 dbEngineFilter = @{
                     # REQUIRED
                     dbEngines = @(
                         $someAwsNativeRdsDbEngine # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbEngine]) for enum values.
                     )
                 }
                 # OPTIONAL
                 dbInstanceClassFilter = @{
                     # REQUIRED
                     dbInstanceClasses = @(
                         $someAwsNativeRdsDbInstanceClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbInstanceClass]) for enum values.
                     )
                 }
                 # OPTIONAL
                 orgFilter = @{
                     # REQUIRED
                     orgIds = @(
                         $someString
                     )
                 }
             }
             # OPTIONAL
             $query.Var.includeSecurityMetadata = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeRdsInstanceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the RdsInstances operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: RdsPointInTimeRestoreWindow
              
             $query = New-RscQueryAwsNative -RdsPointInTimeRestoreWindow
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.rdsInstanceName = $someString
             # OPTIONAL
             $query.Var.rdsDatabaseRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeRdsPointInTimeRestoreWindow</dev:code>
        <dev:remarks>
          <maml:para>Runs the RdsPointInTimeRestoreWindow operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: Root
              
             $query = New-RscQueryAwsNative -Root
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeRoot</dev:code>
        <dev:remarks>
          <maml:para>Runs the Root operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: S3Bucket
              
             $query = New-RscQueryAwsNative -S3Bucket
              
             # REQUIRED
             $query.Var.s3BucketRubrikId = $someString
             # OPTIONAL
             $query.Var.includeSecurityMetadata = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AwsNativeS3Bucket</dev:code>
        <dev:remarks>
          <maml:para>Runs the S3Bucket operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: ValidateRdsClusterNameForExport
              
             $query = New-RscQueryAwsNative -ValidateRdsClusterNameForExport
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.rdsClusterName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAwsNativeRdsClusterNameForExportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateRdsClusterNameForExport operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AwsNative
             # API Operation: ValidateRdsInstanceNameForExport
              
             $query = New-RscQueryAwsNative -ValidateRdsInstanceNameForExport
              
             # REQUIRED
             $query.Var.awsAccountRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.rdsInstanceName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAwsNativeRdsInstanceNameForExportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateRdsInstanceNameForExport operation of the 'AWS Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryAzure</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryAzure</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 52 operations in the 'Azure' API domain: AdDirectories, AdDirectory, AdObjectsByType, ArmTemplatesByFeature, AzureRegions, AzureStorageAccounts, AzureVnets, BlobContainersByStorageAccount, CdmVersions, CheckPersistentStorageSubscriptionCanUnmap, CloudAccountDetailsForFeature, CloudAccountMissingPermissions, CloudAccountPermissionConfig, CloudAccountSubnetsByRegion, CloudAccountSubscriptionWithFeatures, CloudAccountSubscriptionsByFeature, CloudAccountTenant, CloudAccountTenantWithExoConfigs, CloudAccountTenants, DiskEncryptionSetsByRegion, EncryptionKeys, ExocomputeConfigsInAccount, HasRelicAdSnapshot, HostedAzureRegions, IsStorageAccountNameAvailable, KeyVaultsByRegion, ManagedIdentities, Nsgs, Regions, RegionsWithAzDetails, ResourceGroups, ResourceGroupsFromAzure, SearchAdSnapshot, SqlDatabase, SqlDatabaseDbPointInTimeRestoreWindowFromAzure, SqlDatabaseServer, SqlDatabaseServerElasticPools, SqlDatabaseServers, SqlDatabases, SqlManagedInstanceDatabase, SqlManagedInstanceDatabases, SqlManagedInstanceDbPointInTimeRestoreWindowFromAzure, SqlManagedInstanceServer, SqlManagedInstanceServers, StorageAccounts, StorageAccountsByRegion, Subnets, SubscriptionWithExocomputeMappings, Subscriptions, VNets, ValidateCloudAccountExocomputeConfigurations, or ValidateCreateClusterInput.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryAzure creates a new query object for operations in the 'Azure' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 52 operations in the 'Azure' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AdDirectories, AdDirectory, AdObjectsByType, ArmTemplatesByFeature, AzureRegions, AzureStorageAccounts, AzureVnets, BlobContainersByStorageAccount, CdmVersions, CheckPersistentStorageSubscriptionCanUnmap, CloudAccountDetailsForFeature, CloudAccountMissingPermissions, CloudAccountPermissionConfig, CloudAccountSubnetsByRegion, CloudAccountSubscriptionWithFeatures, CloudAccountSubscriptionsByFeature, CloudAccountTenant, CloudAccountTenantWithExoConfigs, CloudAccountTenants, DiskEncryptionSetsByRegion, EncryptionKeys, ExocomputeConfigsInAccount, HasRelicAdSnapshot, HostedAzureRegions, IsStorageAccountNameAvailable, KeyVaultsByRegion, ManagedIdentities, Nsgs, Regions, RegionsWithAzDetails, ResourceGroups, ResourceGroupsFromAzure, SearchAdSnapshot, SqlDatabase, SqlDatabaseDbPointInTimeRestoreWindowFromAzure, SqlDatabaseServer, SqlDatabaseServerElasticPools, SqlDatabaseServers, SqlDatabases, SqlManagedInstanceDatabase, SqlManagedInstanceDatabases, SqlManagedInstanceDbPointInTimeRestoreWindowFromAzure, SqlManagedInstanceServer, SqlManagedInstanceServers, StorageAccounts, StorageAccountsByRegion, Subnets, SubscriptionWithExocomputeMappings, Subscriptions, VNets, ValidateCloudAccountExocomputeConfigurations, or ValidateCreateClusterInput. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAzure -AdDirectories).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAzure -AdDirectories).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryAzure</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AdDirectories</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AdDirectory</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AdObjectsByType</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ArmTemplatesByFeature</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AzureRegions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AzureStorageAccounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AzureVnets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BlobContainersByStorageAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CdmVersions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckPersistentStorageSubscriptionCanUnmap</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountDetailsForFeature</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountMissingPermissions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountPermissionConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountSubnetsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountSubscriptionWithFeatures</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountSubscriptionsByFeature</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountTenant</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountTenantWithExoConfigs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountTenants</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DiskEncryptionSetsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EncryptionKeys</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExocomputeConfigsInAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HasRelicAdSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HostedAzureRegions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsStorageAccountNameAvailable</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">KeyVaultsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedIdentities</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nsgs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Regions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegionsWithAzDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResourceGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResourceGroupsFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SearchAdSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlDatabaseDbPointInTimeRestoreWindowFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlDatabaseServer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlDatabaseServerElasticPools</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlDatabaseServers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlDatabases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlManagedInstanceDatabase</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlManagedInstanceDatabases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlManagedInstanceDbPointInTimeRestoreWindowFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlManagedInstanceServer</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlManagedInstanceServers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StorageAccounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StorageAccountsByRegion</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Subnets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SubscriptionWithExocomputeMappings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Subscriptions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VNets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateCloudAccountExocomputeConfigurations</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateCreateClusterInput</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AdDirectories
              
             $query = New-RscQueryAzure -AdDirectories
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureAdDirectoryConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AdDirectories operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AdDirectory
              
             $query = New-RscQueryAzure -AdDirectory
              
             # REQUIRED
             $query.Var.workloadFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureAdDirectory</dev:code>
        <dev:remarks>
          <maml:para>Runs the AdDirectory operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AdObjectsByType
              
             $query = New-RscQueryAzure -AdObjectsByType
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortByOption = @(
                 $someAzureAdObjectSearchType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdObjectSearchType]) for enum values.
             )
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 workloadFid = $someString
                 # REQUIRED
                 keywordSearchFilters = @(
                     @{
                         # OPTIONAL
                         searchKeyword = $someString
                         # OPTIONAL
                         searchKeywordType = $someString
                     }
                 )
                 # REQUIRED
                 azureAdObjectType = $someAzureAdObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdObjectType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureAdObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AdObjectsByType operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: ArmTemplatesByFeature
              
             $query = New-RscQueryAzure -ArmTemplatesByFeature
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 customerTenantDomainName = $someString
                 # OPTIONAL
                 features = @(
                     $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                 )
                 # REQUIRED
                 operationType = $someCloudAccountOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountOperation]) for enum values.
                 # REQUIRED
                 cloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values.
                 # OPTIONAL
                 featuresToInclude = @(
                     @{
                         # OPTIONAL
                         permissionsGroups = @(
                             $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                         )
                         # REQUIRED
                         featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureArmTemplateByFeature&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ArmTemplatesByFeature operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AzureRegions
              
             $query = New-RscQueryAzure -AzureRegions
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureCloudAccountRegion&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AzureRegions operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AzureStorageAccounts
              
             $query = New-RscQueryAzure -AzureStorageAccounts
              
             # REQUIRED
             $query.Var.storageAccountsRequest = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 resourceGroup = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AzureStorageAccounts operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: AzureVnets
              
             $query = New-RscQueryAzure -AzureVnets
              
             # REQUIRED
             $query.Var.vnetRequest = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 resourceGroup = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AzureVnets operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: BlobContainersByStorageAccount
              
             $query = New-RscQueryAzure -BlobContainersByStorageAccount
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 resourceGroup = $someString
                 # OPTIONAL
                 storageAccount = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureBlobContainerCcprovisionConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BlobContainersByStorageAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CdmVersions
              
             $query = New-RscQueryAzure -CdmVersions
              
             # REQUIRED
             $query.Var.cdmVersionRequest = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 location = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureCdmVersion&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmVersions operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CheckPersistentStorageSubscriptionCanUnmap
              
             $query = New-RscQueryAzure -CheckPersistentStorageSubscriptionCanUnmap
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.unmappingValidationType = $someUnmappingValidationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmappingValidationType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CheckAzurePersistentStorageSubscriptionCanUnmapReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckPersistentStorageSubscriptionCanUnmap operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountDetailsForFeature
              
             $query = New-RscQueryAzure -CloudAccountDetailsForFeature
              
             # REQUIRED
             $query.Var.featureId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureCloudAccountDetailsForFeatureReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountDetailsForFeature operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountMissingPermissions
              
             $query = New-RscQueryAzure -CloudAccountMissingPermissions
              
             # REQUIRED
             $query.Var.sessionId = $someString
             # REQUIRED
             $query.Var.subscriptionIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.cloudAccountAction = $someCloudAccountAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountAction]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureSubscriptionMissingPermissions&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountMissingPermissions operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountPermissionConfig
              
             $query = New-RscQueryAzure -CloudAccountPermissionConfig
              
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.permissionsGroups = @(
                 $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureCloudAccountPermissionConfigResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountPermissionConfig operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountSubnetsByRegion
              
             $query = New-RscQueryAzure -CloudAccountSubnetsByRegion
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
             # REQUIRED
             $query.Var.region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeSubnet&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountSubnetsByRegion operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountSubscriptionWithFeatures
              
             $query = New-RscQueryAzure -CloudAccountSubscriptionWithFeatures
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureCloudAccountSubscriptionWithFeatures</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountSubscriptionWithFeatures operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountSubscriptionsByFeature
              
             $query = New-RscQueryAzure -CloudAccountSubscriptionsByFeature
              
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.subscriptionStatusFilters = @(
                 $someCloudAccountStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountStatus]) for enum values.
             )
             # OPTIONAL
             $query.Var.permissionsGroupFilters = @(
                 @{
                     # OPTIONAL
                     featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                     # OPTIONAL
                     permissionsGroups = @(
                         $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureSubscriptionWithFeaturesType&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountSubscriptionsByFeature operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountTenant
              
             $query = New-RscQueryAzure -CloudAccountTenant
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.subscriptionStatusFilters = @(
                 $someCloudAccountStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountStatus]) for enum values.
             )
             # REQUIRED
             $query.Var.subscriptionSearchText = $someString
             # OPTIONAL
             $query.Var.subscriptionIdsFilter = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureCloudAccountTenant</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountTenant operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountTenantWithExoConfigs
              
             $query = New-RscQueryAzure -CloudAccountTenantWithExoConfigs
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.subscriptionStatusFilters = @(
                 $someCloudAccountStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountStatus]) for enum values.
             )
             # REQUIRED
             $query.Var.subscriptionSearchText = $someString
             # OPTIONAL
             $query.Var.subscriptionIdsFilter = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureCloudAccountTenantWithExoConfigs</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountTenantWithExoConfigs operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: CloudAccountTenants
              
             $query = New-RscQueryAzure -CloudAccountTenants
              
             # OPTIONAL
             $query.Var.features = @(
                 $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             )
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.includeSubscriptionDetails = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureCloudAccountTenant&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountTenants operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: DiskEncryptionSetsByRegion
              
             $query = New-RscQueryAzure -DiskEncryptionSetsByRegion
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeDiskEncryptionSet&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DiskEncryptionSetsByRegion operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: EncryptionKeys
              
             $query = New-RscQueryAzure -EncryptionKeys
              
             # REQUIRED
             $query.Var.azureEncryptionKeysInput = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 keyVaultName = $someString
                 # REQUIRED
                 resourceGroupName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureEncryptionKey&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the EncryptionKeys operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: ExocomputeConfigsInAccount
              
             $query = New-RscQueryAzure -ExocomputeConfigsInAccount
              
             # OPTIONAL
             $query.Var.azureExocomputeSearchQuery = $someString
             # OPTIONAL
             $query.Var.cloudAccountIDs = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureExocomputeConfigsInAccount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExocomputeConfigsInAccount operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: HasRelicAdSnapshot
              
             $query = New-RscQueryAzure -HasRelicAdSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 domainName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HasRelicAzureAdSnapshotReplyType</dev:code>
        <dev:remarks>
          <maml:para>Runs the HasRelicAdSnapshot operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: HostedAzureRegions
              
             $query = New-RscQueryAzure -HostedAzureRegions
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureRegionsResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the HostedAzureRegions operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: IsStorageAccountNameAvailable
              
             $query = New-RscQueryAzure -IsStorageAccountNameAvailable
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.storageAccountName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsStorageAccountNameAvailable operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: KeyVaultsByRegion
              
             $query = New-RscQueryAzure -KeyVaultsByRegion
              
             # REQUIRED
             $query.Var.azureKeyVaultsInput = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values.
                 # OPTIONAL
                 userAssignedManagedIdentityPrincipalId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureKeyVault&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the KeyVaultsByRegion operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: ManagedIdentities
              
             $query = New-RscQueryAzure -ManagedIdentities
              
             # REQUIRED
             $query.Var.managedIdentitiesRequest = @{
                 # REQUIRED
                 cloudAccountId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureManagedIdentity&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManagedIdentities operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: Nsgs
              
             $query = New-RscQueryAzure -Nsgs
              
             # REQUIRED
             $query.Var.nsgRequest = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 resourceGroup = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Nsgs operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: Regions
              
             $query = New-RscQueryAzure -Regions
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RegionConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Regions operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: RegionsWithAzDetails
              
             $query = New-RscQueryAzure -RegionsWithAzDetails
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureLocationDetailType&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegionsWithAzDetails operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: ResourceGroups
              
             $query = New-RscQueryAzure -ResourceGroups
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ResourceGroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResourceGroups operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 32 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: ResourceGroupsFromAzure
              
             $query = New-RscQueryAzure -ResourceGroupsFromAzure
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
             # REQUIRED
             $query.Var.azureSubscriptionNativeId = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureResourceGroup&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResourceGroupsFromAzure operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 33 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SearchAdSnapshot
              
             $query = New-RscQueryAzure -SearchAdSnapshot
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
                 # REQUIRED
                 workloadFid = $someString
                 # REQUIRED
                 keywordSearchFilters = @(
                     @{
                         # OPTIONAL
                         searchKeyword = $someString
                         # OPTIONAL
                         searchKeywordType = $someString
                     }
                 )
                 # REQUIRED
                 azureAdObjectType = $someAzureAdObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdObjectType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureAdObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SearchAdSnapshot operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 34 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlDatabase
              
             $query = New-RscQueryAzure -SqlDatabase
              
             # REQUIRED
             $query.Var.azureSqlDatabaseRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlDatabaseDb</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlDatabase operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 35 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlDatabaseDbPointInTimeRestoreWindowFromAzure
              
             $query = New-RscQueryAzure -SqlDatabaseDbPointInTimeRestoreWindowFromAzure
              
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.azureSqlDatabaseServerName = $someString
             # REQUIRED
             $query.Var.azureSqlDatabaseName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeSqlDatabasePointInTimeRestoreWindow</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlDatabaseDbPointInTimeRestoreWindowFromAzure operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 36 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlDatabaseServer
              
             $query = New-RscQueryAzure -SqlDatabaseServer
              
             # REQUIRED
             $query.Var.azureSqlDatabaseServerRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlDatabaseServer</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlDatabaseServer operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 37 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlDatabaseServerElasticPools
              
             $query = New-RscQueryAzure -SqlDatabaseServerElasticPools
              
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.azureSqlDatabaseServerName = $someString
             # REQUIRED
             $query.Var.azureSqlDatabaseServerRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureSqlDatabaseServerElasticPool&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlDatabaseServerElasticPools operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 38 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlDatabaseServers
              
             $query = New-RscQueryAzure -SqlDatabaseServers
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureSqlDatabaseServerSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlDatabaseServerSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.azureSqlDatabaseServerFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 resourceGroupFilter = @{
                     # REQUIRED
                     resourceGroupNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 subscriptionFilter = @{
                     # REQUIRED
                     subscriptionIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlDatabaseServerConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlDatabaseServers operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 39 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlDatabases
              
             $query = New-RscQueryAzure -SqlDatabases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureSqlDatabaseSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlDatabaseSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.azureSqlDatabaseFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 resourceGroupFilter = @{
                     # REQUIRED
                     resourceGroupNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 subscriptionFilter = @{
                     # REQUIRED
                     subscriptionIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 tagFilter = @{
                     # REQUIRED
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 serverFilter = @{
                     # REQUIRED
                     serverNames = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlDatabaseDbConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlDatabases operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 40 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlManagedInstanceDatabase
              
             $query = New-RscQueryAzure -SqlManagedInstanceDatabase
              
             # REQUIRED
             $query.Var.azureSqlManagedInstanceDatabaseRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlManagedInstanceDatabase</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlManagedInstanceDatabase operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 41 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlManagedInstanceDatabases
              
             $query = New-RscQueryAzure -SqlManagedInstanceDatabases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureSqlManagedInstanceDatabaseSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlManagedInstanceDatabaseSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.azureSqlManagedInstanceDatabaseFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 resourceGroupFilter = @{
                     # REQUIRED
                     resourceGroupNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 subscriptionFilter = @{
                     # REQUIRED
                     subscriptionIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 serverFilter = @{
                     # REQUIRED
                     serverNames = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlManagedInstanceDatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlManagedInstanceDatabases operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 42 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlManagedInstanceDbPointInTimeRestoreWindowFromAzure
              
             $query = New-RscQueryAzure -SqlManagedInstanceDbPointInTimeRestoreWindowFromAzure
              
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.azureSqlManagedInstanceName = $someString
             # REQUIRED
             $query.Var.azureSqlDatabaseName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeSqlDatabasePointInTimeRestoreWindow</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlManagedInstanceDbPointInTimeRestoreWindowFromAzure operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 43 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlManagedInstanceServer
              
             $query = New-RscQueryAzure -SqlManagedInstanceServer
              
             # REQUIRED
             $query.Var.azureSqlManagedInstanceServerRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlManagedInstanceServer</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlManagedInstanceServer operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 44 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SqlManagedInstanceServers
              
             $query = New-RscQueryAzure -SqlManagedInstanceServers
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureSqlManagedInstanceServerSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlManagedInstanceServerSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.azureSqlManagedInstanceServerFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 resourceGroupFilter = @{
                     # REQUIRED
                     resourceGroupNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 subscriptionFilter = @{
                     # REQUIRED
                     subscriptionIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 tagFilter = @{
                     # REQUIRED
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSqlManagedInstanceServerConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlManagedInstanceServers operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 45 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StorageAccounts
              
             $query = New-RscQueryAzure -StorageAccounts
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.regionName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: StorageAccountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the StorageAccounts operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 46 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: StorageAccountsByRegion
              
             $query = New-RscQueryAzure -StorageAccountsByRegion
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 region = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureStorageAccountCcprovision&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the StorageAccountsByRegion operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 47 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: Subnets
              
             $query = New-RscQueryAzure -Subnets
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.vNetId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SubnetConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Subnets operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 48 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: SubscriptionWithExocomputeMappings
              
             $query = New-RscQueryAzure -SubscriptionWithExocomputeMappings
              
             # OPTIONAL
             $query.Var.features = @(
                 $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             )
             # OPTIONAL
             $query.Var.exocomputeSubscriptionIdsFilter = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureSubscriptionWithExocomputeMapping&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SubscriptionWithExocomputeMappings operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 49 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: Subscriptions
              
             $query = New-RscQueryAzure -Subscriptions
              
             # REQUIRED
             $query.Var.tenantId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureSubscriptionConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Subscriptions operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 50 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: VNets
              
             $query = New-RscQueryAzure -VNets
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.regionName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VnetConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the VNets operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 51 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: ValidateCloudAccountExocomputeConfigurations
              
             $query = New-RscQueryAzure -ValidateCloudAccountExocomputeConfigurations
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 cloudAccountId = $someString
                 # REQUIRED
                 azureExocomputeRegionConfigs = @(
                     @{
                         # REQUIRED
                         region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                         # REQUIRED
                         subnetNativeId = $someString
                         # REQUIRED
                         isRscManaged = $someBoolean
                         # OPTIONAL
                         podSubnetNativeId = $someString
                         # OPTIONAL
                         podOverlayNetworkCidr = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAzureSubnetsForCloudAccountExocomputeReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateCloudAccountExocomputeConfigurations operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 52 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Azure
             # API Operation: ValidateCreateClusterInput
              
             $query = New-RscQueryAzure -ValidateCreateClusterInput
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 isEsType = $someBoolean
                 # OPTIONAL
                 keepClusterOnFailure = $someBoolean
                 # OPTIONAL
                 clusterConfig = @{
                     # OPTIONAL
                     userEmail = $someString
                     # OPTIONAL
                     adminPassword = $someString
                     # OPTIONAL
                     clusterName = $someString
                     # OPTIONAL
                     numNodes = $someInt
                     # OPTIONAL
                     dnsSearchDomains = @(
                         $someString
                     )
                     # OPTIONAL
                     dnsNameServers = @(
                         $someString
                     )
                     # OPTIONAL
                     ntpServers = @(
                         $someString
                     )
                     # OPTIONAL
                     azureEsConfig = @{
                         # OPTIONAL
                         storageAccount = $someString
                         # OPTIONAL
                         resourceGroup = $someString
                         # OPTIONAL
                         storageSecret = $someString
                         # OPTIONAL
                         containerName = $someString
                         # OPTIONAL
                         shouldCreateContainer = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                         # OPTIONAL
                         managedIdentity = @{
                             # OPTIONAL
                             name = $someString
                             # OPTIONAL
                             clientId = $someString
                             # OPTIONAL
                             resourceGroup = $someString
                         }
                     }
                     # OPTIONAL
                     awsEsConfig = @{
                         # OPTIONAL
                         bucketName = $someString
                         # OPTIONAL
                         shouldCreateBucket = $someBoolean
                         # OPTIONAL
                         enableObjectLock = $someBoolean
                         # OPTIONAL
                         enableImmutability = $someBoolean
                     }
                 }
                 # OPTIONAL
                 vmConfig = @{
                     # OPTIONAL
                     resourceGroup = $someString
                     # OPTIONAL
                     cdmVersion = $someString
                     # OPTIONAL
                     location = $someString
                     # OPTIONAL
                     nodeSizeGb = $someInt
                     # OPTIONAL
                     networkResourceGroup = $someString
                     # OPTIONAL
                     vnetResourceGroup = $someString
                     # OPTIONAL
                     networkSecurityGroup = $someString
                     # OPTIONAL
                     networkSecurityResourceGroup = $someString
                     # OPTIONAL
                     vnet = $someString
                     # OPTIONAL
                     subnet = $someString
                     # OPTIONAL
                     tags = $someString
                     # OPTIONAL
                     vmImage = $someString
                     # OPTIONAL
                     cdmProduct = $someString
                     # OPTIONAL
                     availabilityZone = $someString
                     # OPTIONAL
                     vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values.
                     # OPTIONAL
                     instanceType = $someAzureInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureInstanceType]) for enum values.
                 }
                 # OPTIONAL
                 validations = @(
                     $someClusterCreateValidations # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCreateValidations]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateCreateClusterInput operation of the 'Azure' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryAzureNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryAzureNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 23 operations in the 'Azure Native' API domain: AvailabilitySetsByRegionFromAzure, DoesResourceGroupExist, ExportCompatibleDiskTypesByRegionFromAzure, ExportCompatibleVmSizesByRegionFromAzure, IsManagedDiskSnapshotRestorable, IsSqlDatabaseSnapshotPersistent, ManagedDisk, ManagedDisks, ResourceGroup, ResourceGroups, ResourceGroupsInfoIfExist, Root, SecurityGroupsByRegionFromAzure, StorageAccountsFromAzure, SubnetsByRegionFromAzure, Subscription, Subscriptions, ValidateSqlDatabaseDbNameForExport, ValidateSqlManagedInstanceDbNameForExport, VirtualMachine, VirtualMachineSizes, VirtualMachines, or VirtualNetworks.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryAzureNative creates a new query object for operations in the 'Azure Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 23 operations in the 'Azure Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AvailabilitySetsByRegionFromAzure, DoesResourceGroupExist, ExportCompatibleDiskTypesByRegionFromAzure, ExportCompatibleVmSizesByRegionFromAzure, IsManagedDiskSnapshotRestorable, IsSqlDatabaseSnapshotPersistent, ManagedDisk, ManagedDisks, ResourceGroup, ResourceGroups, ResourceGroupsInfoIfExist, Root, SecurityGroupsByRegionFromAzure, StorageAccountsFromAzure, SubnetsByRegionFromAzure, Subscription, Subscriptions, ValidateSqlDatabaseDbNameForExport, ValidateSqlManagedInstanceDbNameForExport, VirtualMachine, VirtualMachineSizes, VirtualMachines, or VirtualNetworks. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAzureNative -AvailabilitySetsByRegionFromAzure).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAzureNative -AvailabilitySetsByRegionFromAzure).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryAzureNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AvailabilitySetsByRegionFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DoesResourceGroupExist</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportCompatibleDiskTypesByRegionFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExportCompatibleVmSizesByRegionFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsManagedDiskSnapshotRestorable</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsSqlDatabaseSnapshotPersistent</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedDisk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedDisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResourceGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResourceGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResourceGroupsInfoIfExist</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Root</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SecurityGroupsByRegionFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StorageAccountsFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SubnetsByRegionFromAzure</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Subscription</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Subscriptions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateSqlDatabaseDbNameForExport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateSqlManagedInstanceDbNameForExport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualMachine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualMachineSizes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualMachines</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualNetworks</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: AvailabilitySetsByRegionFromAzure
              
             $query = New-RscQueryAzureNative -AvailabilitySetsByRegionFromAzure
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.region = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeAvailabilitySet&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AvailabilitySetsByRegionFromAzure operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: DoesResourceGroupExist
              
             $query = New-RscQueryAzureNative -DoesResourceGroupExist
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
             # REQUIRED
             $query.Var.azureSubscriptionNativeId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DoesResourceGroupExist operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ExportCompatibleDiskTypesByRegionFromAzure
              
             $query = New-RscQueryAzureNative -ExportCompatibleDiskTypesByRegionFromAzure
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeExportCompatibleDiskTypes&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportCompatibleDiskTypesByRegionFromAzure operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ExportCompatibleVmSizesByRegionFromAzure
              
             $query = New-RscQueryAzureNative -ExportCompatibleVmSizesByRegionFromAzure
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.vmSnapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeExportCompatibleVmSizes&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportCompatibleVmSizesByRegionFromAzure operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: IsManagedDiskSnapshotRestorable
              
             $query = New-RscQueryAzureNative -IsManagedDiskSnapshotRestorable
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.diskSnapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsManagedDiskSnapshotRestorable operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: IsSqlDatabaseSnapshotPersistent
              
             $query = New-RscQueryAzureNative -IsSqlDatabaseSnapshotPersistent
              
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsSqlDatabaseSnapshotPersistent operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ManagedDisk
              
             $query = New-RscQueryAzureNative -ManagedDisk
              
             # REQUIRED
             $query.Var.azureManagedDiskRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeManagedDisk</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManagedDisk operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ManagedDisks
              
             $query = New-RscQueryAzureNative -ManagedDisks
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureNativeDiskSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeDiskSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.diskFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 resourceGroupFilter = @{
                     # REQUIRED
                     resourceGroupNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 subscriptionFilter = @{
                     # REQUIRED
                     subscriptionIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 diskTypeFilter = @{
                     # REQUIRED
                     diskTypes = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 attachedVmFilter = @{
                     # REQUIRED
                     virtualMachineIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 tagFilter = @{
                     # REQUIRED
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 exocomputeConnectedFilter = @{
                     # REQUIRED
                     isConnected = $someBoolean
                 }
                 # OPTIONAL
                 fileIndexingFilter = @{
                     # REQUIRED
                     statuses = @(
                         $someAzureNativeFileIndexingStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeFileIndexingStatus]) for enum values.
                     )
                 }
                 # OPTIONAL
                 orgFilter = @{
                     # REQUIRED
                     orgIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeManagedDiskConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManagedDisks operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ResourceGroup
              
             $query = New-RscQueryAzureNative -ResourceGroup
              
             # REQUIRED
             $query.Var.resourceGroupId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeResourceGroup</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResourceGroup operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ResourceGroups
              
             $query = New-RscQueryAzureNative -ResourceGroups
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureNativeCommonResourceGroupSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeCommonResourceGroupSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.commonResourceGroupFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 subscriptionFilter = @{
                     # REQUIRED
                     subscriptionIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
             }
             # OPTIONAL
             $query.Var.protectedObjectTypes = @(
                 $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
             )
             # OPTIONAL
             $query.Var.azureNativeProtectionFeatures = @(
                 $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeResourceGroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResourceGroups operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ResourceGroupsInfoIfExist
              
             $query = New-RscQueryAzureNative -ResourceGroupsInfoIfExist
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 sessionId = $someString
                 # REQUIRED
                 resourceGroupInputs = @(
                     @{
                         # REQUIRED
                         subscriptionNativeId = $someString
                         # REQUIRED
                         resourceGroupName = $someString
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureResourceGroupInfo&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResourceGroupsInfoIfExist operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: Root
              
             $query = New-RscQueryAzureNative -Root
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeRoot</dev:code>
        <dev:remarks>
          <maml:para>Runs the Root operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: SecurityGroupsByRegionFromAzure
              
             $query = New-RscQueryAzureNative -SecurityGroupsByRegionFromAzure
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeSecurityGroup&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SecurityGroupsByRegionFromAzure operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: StorageAccountsFromAzure
              
             $query = New-RscQueryAzureNative -StorageAccountsFromAzure
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeStorageAccount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the StorageAccountsFromAzure operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: SubnetsByRegionFromAzure
              
             $query = New-RscQueryAzureNative -SubnetsByRegionFromAzure
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
             # REQUIRED
             $query.Var.region = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeSubnet&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SubnetsByRegionFromAzure operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: Subscription
              
             $query = New-RscQueryAzureNative -Subscription
              
             # REQUIRED
             $query.Var.azureSubscriptionRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeSubscription</dev:code>
        <dev:remarks>
          <maml:para>Runs the Subscription operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: Subscriptions
              
             $query = New-RscQueryAzureNative -Subscriptions
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureNativeSubscriptionSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeSubscriptionSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.subscriptionFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
             }
             # OPTIONAL
             $query.Var.authorizedOperationFilter = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
             # OPTIONAL
             $query.Var.workloadHierarchy = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
             # OPTIONAL
             $query.Var.azureNativeProtectionFeature = $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeSubscriptionConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Subscriptions operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ValidateSqlDatabaseDbNameForExport
              
             $query = New-RscQueryAzureNative -ValidateSqlDatabaseDbNameForExport
              
             # REQUIRED
             $query.Var.azureSqlDatabaseName = $someString
             # REQUIRED
             $query.Var.azureSqlDatabaseServerRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAzureNativeSqlDatabaseDbNameForExportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateSqlDatabaseDbNameForExport operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: ValidateSqlManagedInstanceDbNameForExport
              
             $query = New-RscQueryAzureNative -ValidateSqlManagedInstanceDbNameForExport
              
             # REQUIRED
             $query.Var.azureSqlDatabaseName = $someString
             # REQUIRED
             $query.Var.azureSqlManagedInstanceServerRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateAzureNativeSqlManagedInstanceDbNameForExportReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateSqlManagedInstanceDbNameForExport operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: VirtualMachine
              
             $query = New-RscQueryAzureNative -VirtualMachine
              
             # REQUIRED
             $query.Var.azureVirtualMachineRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeVirtualMachine</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualMachine operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: VirtualMachineSizes
              
             $query = New-RscQueryAzureNative -VirtualMachineSizes
              
             # OPTIONAL
             $query.Var.azureSubscriptionRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualMachineSizes operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: VirtualMachines
              
             $query = New-RscQueryAzureNative -VirtualMachines
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someAzureNativeVirtualMachineSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeVirtualMachineSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.descendantTypeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.virtualMachineFilters = @{
                 # OPTIONAL
                 nameSubstringFilter = @{
                     # REQUIRED
                     nameSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 resourceGroupFilter = @{
                     # REQUIRED
                     resourceGroupNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 subscriptionFilter = @{
                     # REQUIRED
                     subscriptionIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
                     )
                 }
                 # OPTIONAL
                 vmSizeFilter = @{
                     # REQUIRED
                     vmSizes = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 vnetFilter = @{
                     # REQUIRED
                     vnetNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 tagFilter = @{
                     # REQUIRED
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 exocomputeConnectedFilter = @{
                     # REQUIRED
                     isConnected = $someBoolean
                 }
                 # OPTIONAL
                 fileIndexingFilter = @{
                     # REQUIRED
                     statuses = @(
                         $someAzureNativeFileIndexingStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeFileIndexingStatus]) for enum values.
                     )
                 }
                 # OPTIONAL
                 appProtectionStatusFilter = @{
                     # REQUIRED
                     isProtectionSetup = $someBoolean
                 }
                 # OPTIONAL
                 rbsStatusFilter = @{
                     # REQUIRED
                     status = $someCloudInstanceRbsConnectionStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudInstanceRbsConnectionStatus]) for enum values.
                 }
                 # OPTIONAL
                 orgFilter = @{
                     # REQUIRED
                     orgIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNativeVirtualMachineConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualMachines operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureNative
             # API Operation: VirtualNetworks
              
             $query = New-RscQueryAzureNative -VirtualNetworks
              
             # OPTIONAL
             $query.Var.azureSubscriptionRubrikId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AzureNativeVirtualNetwork&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualNetworks operation of the 'Azure Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryAzureO365</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryAzureO365</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'Azure Office365' API domain: CheckNSGOutboundRules, CheckNetworkSubnet, CheckResourceGroupName, CheckStorageAccountAccessibility, CheckStorageAccountName, CheckSubscriptionQuota, CheckVirtualNetworkName, Exocompute, GetAzureHostType, GetNetworkSubnetUnusedAddr, or ValidateUserRoles.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryAzureO365 creates a new query object for operations in the 'Azure Office365' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'Azure Office365' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CheckNSGOutboundRules, CheckNetworkSubnet, CheckResourceGroupName, CheckStorageAccountAccessibility, CheckStorageAccountName, CheckSubscriptionQuota, CheckVirtualNetworkName, Exocompute, GetAzureHostType, GetNetworkSubnetUnusedAddr, or ValidateUserRoles. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAzureO365 -CheckNSGOutboundRules).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryAzureO365 -CheckNSGOutboundRules).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryAzureO365</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CheckNSGOutboundRules</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckNetworkSubnet</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckResourceGroupName</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckStorageAccountAccessibility</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckStorageAccountName</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckSubscriptionQuota</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckVirtualNetworkName</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Exocompute</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GetAzureHostType</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GetNetworkSubnetUnusedAddr</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateUserRoles</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: CheckNSGOutboundRules
              
             $query = New-RscQueryAzureO365 -CheckNSGOutboundRules
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.vnet_name = $someString
             # REQUIRED
             $query.Var.subnet_name = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNetworkSecurityGroupResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckNSGOutboundRules operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: CheckNetworkSubnet
              
             $query = New-RscQueryAzureO365 -CheckNetworkSubnet
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.vnet_name = $someString
             # REQUIRED
             $query.Var.subnet_name = $someString
             # REQUIRED
             $query.Var.strict_addr_check = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNetworkSubnetResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckNetworkSubnet operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: CheckResourceGroupName
              
             $query = New-RscQueryAzureO365 -CheckResourceGroupName
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.groupName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureResourceAvailabilityResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckResourceGroupName operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: CheckStorageAccountAccessibility
              
             $query = New-RscQueryAzureO365 -CheckStorageAccountAccessibility
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.storage_account_name = $someString
             # REQUIRED
             $query.Var.groupName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureResourceAvailabilityResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckStorageAccountAccessibility operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: CheckStorageAccountName
              
             $query = New-RscQueryAzureO365 -CheckStorageAccountName
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.storage_account_name = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureResourceAvailabilityResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckStorageAccountName operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: CheckSubscriptionQuota
              
             $query = New-RscQueryAzureO365 -CheckSubscriptionQuota
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.regionName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureResourceAvailabilityResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckSubscriptionQuota operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: CheckVirtualNetworkName
              
             $query = New-RscQueryAzureO365 -CheckVirtualNetworkName
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.groupName = $someString
             # REQUIRED
             $query.Var.vnet_name = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureResourceAvailabilityResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckVirtualNetworkName operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: Exocompute
              
             $query = New-RscQueryAzureO365 -Exocompute
              
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.exocomputeClusterId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetAzureO365ExocomputeResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the Exocompute operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: GetAzureHostType
              
             $query = New-RscQueryAzureO365 -GetAzureHostType
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetAzureHostTypeResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetAzureHostType operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: GetNetworkSubnetUnusedAddr
              
             $query = New-RscQueryAzureO365 -GetNetworkSubnetUnusedAddr
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
             # REQUIRED
             $query.Var.resourceGroupName = $someString
             # REQUIRED
             $query.Var.vnet_name = $someString
             # REQUIRED
             $query.Var.subnet_name = $someString
             # REQUIRED
             $query.Var.strict_addr_check = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureNetworkSubnetUnusedAddrResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetNetworkSubnetUnusedAddr operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: AzureO365
             # API Operation: ValidateUserRoles
              
             $query = New-RscQueryAzureO365 -ValidateUserRoles
              
             # REQUIRED
             $query.Var.tenantId = $someString
             # REQUIRED
             $query.Var.subscriptionId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AzureUserRoleResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateUserRoles operation of the 'Azure Office365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryCassandra</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryCassandra</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'Cassandra' API domain: ColumnFamilies, ColumnFamily, ColumnFamilyRecoverableRange, ColumnFamilySchema, Keyspace, Keyspaces, Source, or Sources.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryCassandra creates a new query object for operations in the 'Cassandra' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Cassandra' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ColumnFamilies, ColumnFamily, ColumnFamilyRecoverableRange, ColumnFamilySchema, Keyspace, Keyspaces, Source, or Sources. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCassandra -ColumnFamilies).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCassandra -ColumnFamilies).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryCassandra</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ColumnFamilies</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ColumnFamily</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ColumnFamilyRecoverableRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ColumnFamilySchema</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Keyspace</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Keyspaces</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Source</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sources</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: ColumnFamilies
              
             $query = New-RscQueryCassandra -ColumnFamilies
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CassandraColumnFamilyConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ColumnFamilies operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: ColumnFamily
              
             $query = New-RscQueryCassandra -ColumnFamily
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CassandraColumnFamily</dev:code>
        <dev:remarks>
          <maml:para>Runs the ColumnFamily operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: ColumnFamilyRecoverableRange
              
             $query = New-RscQueryCassandra -ColumnFamilyRecoverableRange
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 recoveryRangeRequestData = @{
                     # OPTIONAL
                     sourceType = $someMosaicRecoverableRangeRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicRecoverableRangeRequestSourceType]) for enum values.
                     # REQUIRED
                     databaseName = $someString
                     # REQUIRED
                     sourceName = $someString
                     # REQUIRED
                     tableName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetMosaicRecoverableRangeResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ColumnFamilyRecoverableRange operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: ColumnFamilySchema
              
             $query = New-RscQueryCassandra -ColumnFamilySchema
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 schemaRequestData = @{
                     # REQUIRED
                     databaseName = $someString
                     # REQUIRED
                     sourceName = $someString
                     # REQUIRED
                     tableName = $someString
                     # REQUIRED
                     versionTimestamp = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetSchemaResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ColumnFamilySchema operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: Keyspace
              
             $query = New-RscQueryCassandra -Keyspace
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CassandraKeyspace</dev:code>
        <dev:remarks>
          <maml:para>Runs the Keyspace operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: Keyspaces
              
             $query = New-RscQueryCassandra -Keyspaces
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CassandraKeyspaceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Keyspaces operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: Source
              
             $query = New-RscQueryCassandra -Source
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CassandraSource</dev:code>
        <dev:remarks>
          <maml:para>Runs the Source operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cassandra
             # API Operation: Sources
              
             $query = New-RscQueryCassandra -Sources
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CassandraSourceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Sources operation of the 'Cassandra' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryCertificate</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryCertificate</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'Certificates' API domain: AssignableGlobalCertificates, Certificates, CertificatesWithKey, ClusterCertificates, ClusterCsr, ClusterWebSigned, GlobalCertificate, GlobalCertificates, Info, SigningRequest, or SigningRequests.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryCertificate creates a new query object for operations in the 'Certificates' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'Certificates' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AssignableGlobalCertificates, Certificates, CertificatesWithKey, ClusterCertificates, ClusterCsr, ClusterWebSigned, GlobalCertificate, GlobalCertificates, Info, SigningRequest, or SigningRequests. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCertificate -AssignableGlobalCertificates).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCertificate -AssignableGlobalCertificates).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryCertificate</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AssignableGlobalCertificates</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Certificates</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CertificatesWithKey</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterCertificates</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterCsr</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterWebSigned</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GlobalCertificate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GlobalCertificates</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Info</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SigningRequest</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SigningRequests</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: AssignableGlobalCertificates
              
             $query = New-RscQueryCertificate -AssignableGlobalCertificates
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someGlobalCertificateSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalCertificateSortBy]) for enum values.
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 searchText = $someString
                 # OPTIONAL
                 hasKey = $someBoolean
                 # OPTIONAL
                 statuses = @(
                     $someGlobalCertificateStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalCertificateStatus]) for enum values.
                 )
                 # OPTIONAL
                 clusterIds = @(
                     $someString
                 )
                 # OPTIONAL
                 isTrustedAny = $someBoolean
                 # OPTIONAL
                 isRscBorn = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GlobalCertificateConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AssignableGlobalCertificates operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: Certificates
              
             $query = New-RscQueryCertificate -Certificates
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someCertMgmtSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CertMgmtSortBy]) for enum values.
             # OPTIONAL
             $query.Var.searchTerm = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CertificateConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Certificates operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: CertificatesWithKey
              
             $query = New-RscQueryCertificate -CertificatesWithKey
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CertificateConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CertificatesWithKey operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: ClusterCertificates
              
             $query = New-RscQueryCertificate -ClusterCertificates
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 description = $someString
                 # OPTIONAL
                 expiration = $someString
                 # OPTIONAL
                 hasKey = $someBoolean
                 # OPTIONAL
                 includeExpired = $someBoolean
                 # OPTIONAL
                 isTrusted = $someBoolean
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 sortBy = $someV1QueryCertificatesRequestSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1QueryCertificatesRequestSortBy]) for enum values.
                 # OPTIONAL
                 sortOrder = $someV1QueryCertificatesRequestSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1QueryCertificatesRequestSortOrder]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CertificateSummaryListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterCertificates operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: ClusterCsr
              
             $query = New-RscQueryCertificate -ClusterCsr
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterCsr</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterCsr operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: ClusterWebSigned
              
             $query = New-RscQueryCertificate -ClusterWebSigned
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterWebSignedCertificateReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterWebSigned operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: GlobalCertificate
              
             $query = New-RscQueryCertificate -GlobalCertificate
              
             # REQUIRED
             $query.Var.certificateId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GlobalCertificate</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalCertificate operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: GlobalCertificates
              
             $query = New-RscQueryCertificate -GlobalCertificates
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someGlobalCertificateSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalCertificateSortBy]) for enum values.
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 searchText = $someString
                 # OPTIONAL
                 hasKey = $someBoolean
                 # OPTIONAL
                 statuses = @(
                     $someGlobalCertificateStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalCertificateStatus]) for enum values.
                 )
                 # OPTIONAL
                 clusterIds = @(
                     $someString
                 )
                 # OPTIONAL
                 isTrustedAny = $someBoolean
                 # OPTIONAL
                 isRscBorn = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GlobalCertificateConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalCertificates operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: Info
              
             $query = New-RscQueryCertificate -Info
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 certificatePem = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetCertificateInfoReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Info operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: SigningRequest
              
             $query = New-RscQueryCertificate -SigningRequest
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 csrFid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Csr</dev:code>
        <dev:remarks>
          <maml:para>Runs the SigningRequest operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Certificate
             # API Operation: SigningRequests
              
             $query = New-RscQueryCertificate -SigningRequests
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someCertMgmtSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CertMgmtSortBy]) for enum values.
             # OPTIONAL
             $query.Var.searchTerm = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CsrConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SigningRequests operation of the 'Certificates' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryCloudAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryCloudAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Cloud Account' API domain: CloudAccount, CloudAccounts, CurrentFeaturePermissions, ExocomputeMappings, LatestFeaturePermissions, or WithExocomputeMappings.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryCloudAccount creates a new query object for operations in the 'Cloud Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Cloud Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CloudAccount, CloudAccounts, CurrentFeaturePermissions, ExocomputeMappings, LatestFeaturePermissions, or WithExocomputeMappings. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCloudAccount -CloudAccount).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCloudAccount -CloudAccount).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryCloudAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CurrentFeaturePermissions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExocomputeMappings</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LatestFeaturePermissions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">WithExocomputeMappings</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: CloudAccount
              
             $query = New-RscQueryCloudAccount -CloudAccount
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudAccount</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccount operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: CloudAccounts
              
             $query = New-RscQueryCloudAccount -CloudAccounts
              
             # OPTIONAL
             $query.Var.sortBy = $someCloudAccountSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountSortByFieldEnum]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someCloudAccountFilterFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFilterFieldEnum]) for enum values.
                     # OPTIONAL
                     text = $someString
             }
             )
             # OPTIONAL
             $query.Var.features = @(
                 $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CloudAccount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccounts operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: CurrentFeaturePermissions
              
             $query = New-RscQueryCloudAccount -CurrentFeaturePermissions
              
             # REQUIRED
             $query.Var.cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
             # REQUIRED
             $query.Var.cloudAccountIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CloudAccountFeaturePermission&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CurrentFeaturePermissions operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: ExocomputeMappings
              
             $query = New-RscQueryCloudAccount -ExocomputeMappings
              
             # REQUIRED
             $query.Var.cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
             # REQUIRED
             $query.Var.exocomputeAccountIdsFilter = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CloudAccountsExocomputeAccountMapping&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExocomputeMappings operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: LatestFeaturePermissions
              
             $query = New-RscQueryCloudAccount -LatestFeaturePermissions
              
             # REQUIRED
             $query.Var.cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
             # REQUIRED
             $query.Var.cloudAccountIds = @(
                 $someString
             )
             # REQUIRED
             $query.Var.features = @(
                 $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             )
             # REQUIRED
             $query.Var.featuresWithPermissionsGroups = @(
                 @{
                     # OPTIONAL
                     featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                     # OPTIONAL
                     permissionsGroups = @(
                         $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CloudAccountFeaturePermission&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the LatestFeaturePermissions operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudAccount
             # API Operation: WithExocomputeMappings
              
             $query = New-RscQueryCloudAccount -WithExocomputeMappings
              
             # REQUIRED
             $query.Var.cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
             # REQUIRED
             $query.Var.features = @(
                 $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             )
             # REQUIRED
             $query.Var.exocomputeAccountIdsFilter = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CloudAccountWithExocomputeMapping&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the WithExocomputeMappings operation of the 'Cloud Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryCloudNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryCloudNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 19 operations in the 'Cloud Native' API domain: CheckArchivedSnapshotsLocked, CheckLabelRuleNameUniqueness, CheckRequiredPermissionsForFeature, CheckTagRuleNameUniqueness, CustomerTags, FileRecoveryEligibleSnapshots, IsFileRecoveryFeasible, LabelKeys, LabelRules, LabelValues, RbaInstallers, SnapshotDetailsForRecovery, SnapshotTypeDetails, Snapshots, SqlServerSetupScript, TagKeys, TagRules, TagValues, or WorkloadVersionedFiles.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryCloudNative creates a new query object for operations in the 'Cloud Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 19 operations in the 'Cloud Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CheckArchivedSnapshotsLocked, CheckLabelRuleNameUniqueness, CheckRequiredPermissionsForFeature, CheckTagRuleNameUniqueness, CustomerTags, FileRecoveryEligibleSnapshots, IsFileRecoveryFeasible, LabelKeys, LabelRules, LabelValues, RbaInstallers, SnapshotDetailsForRecovery, SnapshotTypeDetails, Snapshots, SqlServerSetupScript, TagKeys, TagRules, TagValues, or WorkloadVersionedFiles. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCloudNative -CheckArchivedSnapshotsLocked).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCloudNative -CheckArchivedSnapshotsLocked).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryCloudNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CheckArchivedSnapshotsLocked</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckLabelRuleNameUniqueness</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckRequiredPermissionsForFeature</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CheckTagRuleNameUniqueness</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CustomerTags</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FileRecoveryEligibleSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsFileRecoveryFeasible</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LabelKeys</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LabelRules</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LabelValues</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RbaInstallers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotDetailsForRecovery</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotTypeDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SqlServerSetupScript</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TagKeys</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TagRules</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TagValues</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">WorkloadVersionedFiles</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CheckArchivedSnapshotsLocked
              
             $query = New-RscQueryCloudNative -CheckArchivedSnapshotsLocked
              
             # REQUIRED
             $query.Var.workloadId = $someString
             # OPTIONAL
             $query.Var.snapshotIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CheckArchivedSnapshotsLockedReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckArchivedSnapshotsLocked operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CheckLabelRuleNameUniqueness
              
             $query = New-RscQueryCloudNative -CheckLabelRuleNameUniqueness
              
             # REQUIRED
             $query.Var.ruleName = $someString
             # REQUIRED
             $query.Var.objectType = $someCloudNativeLabelObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLabelObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: IsCloudNativeTagRuleNameUniqueReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckLabelRuleNameUniqueness operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CheckRequiredPermissionsForFeature
              
             $query = New-RscQueryCloudNative -CheckRequiredPermissionsForFeature
              
             # REQUIRED
             $query.Var.cloudNativeAccountId = $someString
             # REQUIRED
             $query.Var.featurePermissionCheck = @{
                 # OPTIONAL
                 azureFeature = $someAzureFeatureForPermissionCheck # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureFeatureForPermissionCheck]) for enum values.
                 # OPTIONAL
                 awsFeature = $someAwsFeatureForPermissionCheck # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsFeatureForPermissionCheck]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckRequiredPermissionsForFeature operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CheckTagRuleNameUniqueness
              
             $query = New-RscQueryCloudNative -CheckTagRuleNameUniqueness
              
             # REQUIRED
             $query.Var.ruleName = $someString
             # REQUIRED
             $query.Var.objectType = $someCloudNativeTagObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: IsCloudNativeTagRuleNameUniqueReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckTagRuleNameUniqueness operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: CustomerTags
              
             $query = New-RscQueryCloudNative -CustomerTags
              
             # REQUIRED
             $query.Var.cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values.
             # OPTIONAL
             $query.Var.cloudAccountId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudNativeCustomerTagsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CustomerTags operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: FileRecoveryEligibleSnapshots
              
             $query = New-RscQueryCloudNative -FileRecoveryEligibleSnapshots
              
             # REQUIRED
             $query.Var.workloadId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the FileRecoveryEligibleSnapshots operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: IsFileRecoveryFeasible
              
             $query = New-RscQueryCloudNative -IsFileRecoveryFeasible
              
             # REQUIRED
             $query.Var.snapshotIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidateCloudNativeFileRecoveryFeasibilityReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsFileRecoveryFeasible operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: LabelKeys
              
             $query = New-RscQueryCloudNative -LabelKeys
              
             # REQUIRED
             $query.Var.keySubStr = $someString
             # REQUIRED
             $query.Var.limit = $someInt
             # REQUIRED
             $query.Var.objectType = $someCloudNativeLabelObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLabelObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the LabelKeys operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: LabelRules
              
             $query = New-RscQueryCloudNative -LabelRules
              
             # REQUIRED
             $query.Var.objectType = $someCloudNativeLabelObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLabelObjectType]) for enum values.
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someCloudNativeTagRuleFilterFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagRuleFilterFields]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = $someCloudNativeTagRuleSortByFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagRuleSortByFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetCloudNativeLabelRulesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the LabelRules operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: LabelValues
              
             $query = New-RscQueryCloudNative -LabelValues
              
             # REQUIRED
             $query.Var.valueSubStr = $someString
             # REQUIRED
             $query.Var.key = $someString
             # REQUIRED
             $query.Var.limit = $someInt
             # REQUIRED
             $query.Var.objectType = $someCloudNativeLabelObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLabelObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the LabelValues operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: RbaInstallers
              
             $query = New-RscQueryCloudNative -RbaInstallers
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RbaInstallerUrls</dev:code>
        <dev:remarks>
          <maml:para>Runs the RbaInstallers operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: SnapshotDetailsForRecovery
              
             $query = New-RscQueryCloudNative -SnapshotDetailsForRecovery
              
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudNativeSnapshotDetailsForRecoveryReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotDetailsForRecovery operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: SnapshotTypeDetails
              
             $query = New-RscQueryCloudNative -SnapshotTypeDetails
              
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudNativeSnapshotTypeDetailsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotTypeDetails operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: Snapshots
              
             $query = New-RscQueryCloudNative -Snapshots
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.path = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.searchPrefix = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnapshotFileConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Snapshots operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: SqlServerSetupScript
              
             $query = New-RscQueryCloudNative -SqlServerSetupScript
              
             # OPTIONAL
             $query.Var.cloudNativeObjectType = $someCloudNativeObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudNativeSqlServerSetupScript</dev:code>
        <dev:remarks>
          <maml:para>Runs the SqlServerSetupScript operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: TagKeys
              
             $query = New-RscQueryCloudNative -TagKeys
              
             # REQUIRED
             $query.Var.keySubStr = $someString
             # REQUIRED
             $query.Var.limit = $someInt
             # REQUIRED
             $query.Var.objectType = $someCloudNativeTagObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the TagKeys operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: TagRules
              
             $query = New-RscQueryCloudNative -TagRules
              
             # REQUIRED
             $query.Var.objectType = $someCloudNativeTagObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagObjectType]) for enum values.
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someCloudNativeTagRuleFilterFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagRuleFilterFields]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = $someCloudNativeTagRuleSortByFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagRuleSortByFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetCloudNativeTagRulesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the TagRules operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: TagValues
              
             $query = New-RscQueryCloudNative -TagValues
              
             # REQUIRED
             $query.Var.valueSubStr = $someString
             # REQUIRED
             $query.Var.key = $someString
             # REQUIRED
             $query.Var.limit = $someInt
             # REQUIRED
             $query.Var.objectType = $someCloudNativeTagObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagObjectType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the TagValues operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CloudNative
             # API Operation: WorkloadVersionedFiles
              
             $query = New-RscQueryCloudNative -WorkloadVersionedFiles
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableId = $someString
             # REQUIRED
             $query.Var.searchQuery = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudNativeVersionedFileConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the WorkloadVersionedFiles operation of the 'Cloud Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryCluster</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryCluster</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 32 operations in the 'Cluster' API domain: Cluster, ClusterList, ComputeClusterStatus, Connected, DefaultGateway, Dns, FloatingIps, GetCdmReleaseDetailsForClusterFromSupportPortal, GetGroupCountByCdmClusterStatus, GroupByList, Ipmi, Ipv6Mode, IsTotpAckNecessary, LicensesForClusterProductSummary, List, Missing, NetworkInterfaces, Nodes, NtpServers, OperationJobProgress, Proxy, RadarClusterList, RegistrationProductInfo, ReplicationTargets, Routes, TotpAckStatus, TypeList, ValidateClusterLicenseCapacity, Vlans, WebCertsAndIpmis, Windows, or WithUpgradesInfo.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryCluster creates a new query object for operations in the 'Cluster' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 32 operations in the 'Cluster' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Cluster, ClusterList, ComputeClusterStatus, Connected, DefaultGateway, Dns, FloatingIps, GetCdmReleaseDetailsForClusterFromSupportPortal, GetGroupCountByCdmClusterStatus, GroupByList, Ipmi, Ipv6Mode, IsTotpAckNecessary, LicensesForClusterProductSummary, List, Missing, NetworkInterfaces, Nodes, NtpServers, OperationJobProgress, Proxy, RadarClusterList, RegistrationProductInfo, ReplicationTargets, Routes, TotpAckStatus, TypeList, ValidateClusterLicenseCapacity, Vlans, WebCertsAndIpmis, Windows, or WithUpgradesInfo. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCluster -Cluster).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCluster -Cluster).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryCluster</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Cluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ComputeClusterStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Connected</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DefaultGateway</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Dns</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FloatingIps</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GetCdmReleaseDetailsForClusterFromSupportPortal</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GetGroupCountByCdmClusterStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GroupByList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ipmi</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Ipv6Mode</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsTotpAckNecessary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LicensesForClusterProductSummary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">List</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Missing</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NetworkInterfaces</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Nodes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NtpServers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OperationJobProgress</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Proxy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RadarClusterList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RegistrationProductInfo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ReplicationTargets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Routes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TotpAckStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TypeList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidateClusterLicenseCapacity</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vlans</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">WebCertsAndIpmis</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Windows</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">WithUpgradesInfo</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Cluster
              
             $query = New-RscQueryCluster -Cluster
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Cluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the Cluster operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: ClusterList
              
             $query = New-RscQueryCluster -ClusterList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 id = @(
                     $someString
                 )
                 # OPTIONAL
                 name = @(
                     $someString
                 )
                 # OPTIONAL
                 type = @(
                     $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 objectType = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 registrationTime_gt = $someDateTime
                 # OPTIONAL
                 registrationTime_lt = $someDateTime
                 # OPTIONAL
                 minSoftwareVersion = $someString
                 # OPTIONAL
                 clusterLocation = @(
                     $someString
                 )
                 # OPTIONAL
                 excludeEmptyCluster = $someBoolean
                 # OPTIONAL
                 productType = @(
                     $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                 )
                 # OPTIONAL
                 registeredMode = @(
                     $someClusterRegistrationMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterRegistrationMode]) for enum values.
                 )
                 # OPTIONAL
                 product = $someProduct # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Product]) for enum values.
                 # OPTIONAL
                 orgId = @(
                     $someString
                 )
                 # OPTIONAL
                 productFilters = @(
                     @{
                         # REQUIRED
                         productType = $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                         # OPTIONAL
                         minSoftwareVersion = $someString
                     }
                 )
                 # OPTIONAL
                 excludeId = @(
                     $someString
                 )
                 # OPTIONAL
                 systemStatus = @(
                     $someClusterSystemStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterSystemStatus]) for enum values.
                 )
                 # OPTIONAL
                 connectionState = @(
                     $someClusterStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterStatus]) for enum values.
                 )
                 # OPTIONAL
                 isInFatalOrDisconnectedState = $someBoolean
                 # OPTIONAL
                 cyberEventLockdownMode = @(
                     $someClusterCyberEventLockdownMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCyberEventLockdownMode]) for enum values.
                 )
             }
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someClusterSortByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterSortByEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterList operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: ComputeClusterStatus
              
             $query = New-RscQueryCluster -ComputeClusterStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ComputeClusterDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the ComputeClusterStatus operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Connected
              
             $query = New-RscQueryCluster -Connected
              
             # OPTIONAL
             $query.Var.clusterFilterArg = $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;DataLocationSupportedCluster&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Connected operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: DefaultGateway
              
             $query = New-RscQueryCluster -DefaultGateway
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: InternalGetDefaultGatewayResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the DefaultGateway operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Dns
              
             $query = New-RscQueryCluster -Dns
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterDnsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Dns operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: FloatingIps
              
             $query = New-RscQueryCluster -FloatingIps
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: InternalGetClusterIpsResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the FloatingIps operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: GetCdmReleaseDetailsForClusterFromSupportPortal
              
             $query = New-RscQueryCluster -GetCdmReleaseDetailsForClusterFromSupportPortal
              
             # REQUIRED
             $query.Var.listClusterUuid = @(
                 $someString
             )
             # REQUIRED
             $query.Var.filterVersion = $someString
             # REQUIRED
             $query.Var.fetchLinks = $someBoolean
             # REQUIRED
             $query.Var.filterUpgradeable = $someBoolean
             # REQUIRED
             $query.Var.shouldShowAll = $someBoolean
             # REQUIRED
             $query.Var.filterAfterSource = $someBoolean
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmUpgradeReleaseDetailsFromSupportPortalReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetCdmReleaseDetailsForClusterFromSupportPortal operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: GetGroupCountByCdmClusterStatus
              
             $query = New-RscQueryCluster -GetGroupCountByCdmClusterStatus
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GroupCountListWithTotal</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetGroupCountByCdmClusterStatus operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: GroupByList
              
             $query = New-RscQueryCluster -GroupByList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.groupBy = $someClusterGroupByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterGroupByEnum]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 id = @(
                     $someString
                 )
                 # OPTIONAL
                 name = @(
                     $someString
                 )
                 # OPTIONAL
                 type = @(
                     $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 objectType = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 registrationTime_gt = $someDateTime
                 # OPTIONAL
                 registrationTime_lt = $someDateTime
                 # OPTIONAL
                 minSoftwareVersion = $someString
                 # OPTIONAL
                 clusterLocation = @(
                     $someString
                 )
                 # OPTIONAL
                 excludeEmptyCluster = $someBoolean
                 # OPTIONAL
                 productType = @(
                     $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                 )
                 # OPTIONAL
                 registeredMode = @(
                     $someClusterRegistrationMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterRegistrationMode]) for enum values.
                 )
                 # OPTIONAL
                 product = $someProduct # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Product]) for enum values.
                 # OPTIONAL
                 orgId = @(
                     $someString
                 )
                 # OPTIONAL
                 productFilters = @(
                     @{
                         # REQUIRED
                         productType = $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                         # OPTIONAL
                         minSoftwareVersion = $someString
                     }
                 )
                 # OPTIONAL
                 excludeId = @(
                     $someString
                 )
                 # OPTIONAL
                 systemStatus = @(
                     $someClusterSystemStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterSystemStatus]) for enum values.
                 )
                 # OPTIONAL
                 connectionState = @(
                     $someClusterStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterStatus]) for enum values.
                 )
                 # OPTIONAL
                 isInFatalOrDisconnectedState = $someBoolean
                 # OPTIONAL
                 cyberEventLockdownMode = @(
                     $someClusterCyberEventLockdownMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCyberEventLockdownMode]) for enum values.
                 )
             }
             # OPTIONAL
             $query.Var.timezoneOffset = $someSingle
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterGroupByConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GroupByList operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Ipmi
              
             $query = New-RscQueryCluster -Ipmi
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ModifyIpmiReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Ipmi operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Ipv6Mode
              
             $query = New-RscQueryCluster -Ipv6Mode
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterIpv6ModeReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Ipv6Mode operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: IsTotpAckNecessary
              
             $query = New-RscQueryCluster -IsTotpAckNecessary
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsTotpAckNecessary operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: LicensesForClusterProductSummary
              
             $query = New-RscQueryCluster -LicensesForClusterProductSummary
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 product = $someProduct # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Product]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LicensesForClusterProductReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the LicensesForClusterProductSummary operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: List
              
             $query = New-RscQueryCluster -List
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 id = @(
                     $someString
                 )
                 # OPTIONAL
                 name = @(
                     $someString
                 )
                 # OPTIONAL
                 type = @(
                     $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 objectType = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 registrationTime_gt = $someDateTime
                 # OPTIONAL
                 registrationTime_lt = $someDateTime
                 # OPTIONAL
                 minSoftwareVersion = $someString
                 # OPTIONAL
                 clusterLocation = @(
                     $someString
                 )
                 # OPTIONAL
                 excludeEmptyCluster = $someBoolean
                 # OPTIONAL
                 productType = @(
                     $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                 )
                 # OPTIONAL
                 registeredMode = @(
                     $someClusterRegistrationMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterRegistrationMode]) for enum values.
                 )
                 # OPTIONAL
                 product = $someProduct # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Product]) for enum values.
                 # OPTIONAL
                 orgId = @(
                     $someString
                 )
                 # OPTIONAL
                 productFilters = @(
                     @{
                         # REQUIRED
                         productType = $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                         # OPTIONAL
                         minSoftwareVersion = $someString
                     }
                 )
                 # OPTIONAL
                 excludeId = @(
                     $someString
                 )
                 # OPTIONAL
                 systemStatus = @(
                     $someClusterSystemStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterSystemStatus]) for enum values.
                 )
                 # OPTIONAL
                 connectionState = @(
                     $someClusterStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterStatus]) for enum values.
                 )
                 # OPTIONAL
                 isInFatalOrDisconnectedState = $someBoolean
                 # OPTIONAL
                 cyberEventLockdownMode = @(
                     $someClusterCyberEventLockdownMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCyberEventLockdownMode]) for enum values.
                 )
             }
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someClusterSortByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterSortByEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the List operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Missing
              
             $query = New-RscQueryCluster -Missing
              
             # OPTIONAL
             $query.Var.connectionStatus = $someMissingClusterConnectionStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MissingClusterConnectionStatus]) for enum values.
             # OPTIONAL
             $query.Var.isExcluded = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MissingClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Missing operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: NetworkInterfaces
              
             $query = New-RscQueryCluster -NetworkInterfaces
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 interface = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NetworkInterfaceListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the NetworkInterfaces operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Nodes
              
             $query = New-RscQueryCluster -Nodes
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NodeStatusListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Nodes operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: NtpServers
              
             $query = New-RscQueryCluster -NtpServers
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NtpServerConfigurationListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the NtpServers operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: OperationJobProgress
              
             $query = New-RscQueryCluster -OperationJobProgress
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 clusterUuid = $someString
                 # REQUIRED
                 jobType = $someCcpJobType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CcpJobType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterOperationJobProgress</dev:code>
        <dev:remarks>
          <maml:para>Runs the OperationJobProgress operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Proxy
              
             $query = New-RscQueryCluster -Proxy
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterProxyReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Proxy operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: RadarClusterList
              
             $query = New-RscQueryCluster -RadarClusterList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 id = @(
                     $someString
                 )
                 # OPTIONAL
                 name = @(
                     $someString
                 )
                 # OPTIONAL
                 type = @(
                     $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 objectType = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 registrationTime_gt = $someDateTime
                 # OPTIONAL
                 registrationTime_lt = $someDateTime
                 # OPTIONAL
                 minSoftwareVersion = $someString
                 # OPTIONAL
                 clusterLocation = @(
                     $someString
                 )
                 # OPTIONAL
                 excludeEmptyCluster = $someBoolean
                 # OPTIONAL
                 productType = @(
                     $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                 )
                 # OPTIONAL
                 registeredMode = @(
                     $someClusterRegistrationMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterRegistrationMode]) for enum values.
                 )
                 # OPTIONAL
                 product = $someProduct # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Product]) for enum values.
                 # OPTIONAL
                 orgId = @(
                     $someString
                 )
                 # OPTIONAL
                 productFilters = @(
                     @{
                         # REQUIRED
                         productType = $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                         # OPTIONAL
                         minSoftwareVersion = $someString
                     }
                 )
                 # OPTIONAL
                 excludeId = @(
                     $someString
                 )
                 # OPTIONAL
                 systemStatus = @(
                     $someClusterSystemStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterSystemStatus]) for enum values.
                 )
                 # OPTIONAL
                 connectionState = @(
                     $someClusterStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterStatus]) for enum values.
                 )
                 # OPTIONAL
                 isInFatalOrDisconnectedState = $someBoolean
                 # OPTIONAL
                 cyberEventLockdownMode = @(
                     $someClusterCyberEventLockdownMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCyberEventLockdownMode]) for enum values.
                 )
             }
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someClusterSortByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterSortByEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the RadarClusterList operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: RegistrationProductInfo
              
             $query = New-RscQueryCluster -RegistrationProductInfo
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterRegistrationProductInfoType</dev:code>
        <dev:remarks>
          <maml:para>Runs the RegistrationProductInfo operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: ReplicationTargets
              
             $query = New-RscQueryCluster -ReplicationTargets
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;ClusterReplicationTarget&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ReplicationTargets operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Routes
              
             $query = New-RscQueryCluster -Routes
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterRoutesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Routes operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: TotpAckStatus
              
             $query = New-RscQueryCluster -TotpAckStatus
              
             # REQUIRED
             $query.Var.listClusterUuid = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.Boolean&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the TotpAckStatus operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: TypeList
              
             $query = New-RscQueryCluster -TypeList
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GroupCount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the TypeList operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: ValidateClusterLicenseCapacity
              
             $query = New-RscQueryCluster -ValidateClusterLicenseCapacity
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 nodes = @(
                     @{
                         # OPTIONAL
                         id = $someString
                         # OPTIONAL
                         manufactureTime = $someDateTime
                         # OPTIONAL
                         serial = $someString
                         # OPTIONAL
                         systemUuid = $someString
                         # OPTIONAL
                         teleportToken = $someString
                         # OPTIONAL
                         clusterUuid = $someString
                         # OPTIONAL
                         platform = $someString
                         # OPTIONAL
                         capacity = $someString
                         # OPTIONAL
                         isEntitled = $someBoolean
                     }
                 )
                 # REQUIRED
                 managedByRubrik = $someManagedByRubrik # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedByRubrik]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterLicenseCapacityValidations</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidateClusterLicenseCapacity operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Vlans
              
             $query = New-RscQueryCluster -Vlans
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 vlan = $someInt
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VlanConfigListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Vlans operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: WebCertsAndIpmis
              
             $query = New-RscQueryCluster -WebCertsAndIpmis
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuids = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;ClusterWebCertAndIpmi&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the WebCertsAndIpmis operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: Windows
              
             $query = New-RscQueryCluster -Windows
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: WindowsCluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the Windows operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 32 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Cluster
             # API Operation: WithUpgradesInfo
              
             $query = New-RscQueryCluster -WithUpgradesInfo
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.upgradeFilter = @{
                 # OPTIONAL
                 id = @(
                     $someString
                 )
                 # OPTIONAL
                 name = @(
                     $someString
                 )
                 # OPTIONAL
                 type = @(
                     $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 registrationTime_gt = $someDateTime
                 # OPTIONAL
                 registrationTime_lt = $someDateTime
                 # OPTIONAL
                 minSoftwareVersion = $someString
                 # OPTIONAL
                 downloadedVersion = @(
                     $someString
                 )
                 # OPTIONAL
                 installedVersion = @(
                     $someString
                 )
                 # OPTIONAL
                 eosStatus = @(
                     $someClusterEosStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterEosStatus]) for enum values.
                 )
                 # OPTIONAL
                 upgradeJobStatus = @(
                     $someClusterJobStatusTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterJobStatusTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 clusterLocation = @(
                     $someString
                 )
                 # OPTIONAL
                 versionStatus = @(
                     $someVersionStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VersionStatus]) for enum values.
                 )
                 # OPTIONAL
                 prechecksStatus = @(
                     $somePrechecksStatusTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PrechecksStatusTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 connectionState = @(
                     $someClusterStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterStatus]) for enum values.
                 )
                 # OPTIONAL
                 upgradeScheduled = $someBoolean
                 # OPTIONAL
                 productType = @(
                     $someClusterProductEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterProductEnum]) for enum values.
                 )
             }
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someUpgradeInfoSortByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UpgradeInfoSortByEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the WithUpgradesInfo operation of the 'Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryCrossAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryCrossAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'Cross Account' API domain: ['CrossAccountClusters'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryCrossAccount creates a new query object for operations in the 'Cross Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'Cross Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['CrossAccountClusters']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCrossAccount -CrossAccountClusters).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryCrossAccount -CrossAccountClusters).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryCrossAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CrossAccountClusters</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: CrossAccount
             # API Operation: CrossAccountClusters
              
             $query = New-RscQueryCrossAccount -CrossAccountClusters
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someGetCrossAccountClustersFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GetCrossAccountClustersFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
             }
             )
             # OPTIONAL
             $query.Var.sortBy = $someGetCrossAccountClustersSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GetCrossAccountClustersSortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CrossAccountClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CrossAccountClusters operation of the 'Cross Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryDb2</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryDb2</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 9 operations in the 'Db2' API domain: Database, DatabaseJobStatus, Databases, Instance, Instances, LogSnapshot, LogSnapshots, RecoverableRange, or RecoverableRanges.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryDb2 creates a new query object for operations in the 'Db2' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 9 operations in the 'Db2' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Database, DatabaseJobStatus, Databases, Instance, Instances, LogSnapshot, LogSnapshots, RecoverableRange, or RecoverableRanges. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryDb2 -Database).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryDb2 -Database).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryDb2</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Database</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseJobStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Databases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Instance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Instances</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LogSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LogSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRanges</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: Database
              
             $query = New-RscQueryDb2 -Database
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2Database</dev:code>
        <dev:remarks>
          <maml:para>Runs the Database operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: DatabaseJobStatus
              
             $query = New-RscQueryDb2 -DatabaseJobStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseJobStatus operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: Databases
              
             $query = New-RscQueryDb2 -Databases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2DatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Databases operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: Instance
              
             $query = New-RscQueryDb2 -Instance
              
             # REQUIRED
             $query.Var.id = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2Instance</dev:code>
        <dev:remarks>
          <maml:para>Runs the Instance operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: Instances
              
             $query = New-RscQueryDb2 -Instances
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2InstanceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Instances operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: LogSnapshot
              
             $query = New-RscQueryDb2 -LogSnapshot
              
             # REQUIRED
             $query.Var.db2LogSnapshotFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2LogSnapshot</dev:code>
        <dev:remarks>
          <maml:para>Runs the LogSnapshot operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: LogSnapshots
              
             $query = New-RscQueryDb2 -LogSnapshots
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someDb2LogSnapshotSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Db2LogSnapshotSortBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 workloadId = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 fromTime = $someDateTime
                 # OPTIONAL
                 toTime = $someDateTime
                 # OPTIONAL
                 isArchived = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2LogSnapshotConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the LogSnapshots operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: RecoverableRange
              
             $query = New-RscQueryDb2 -RecoverableRange
              
             # REQUIRED
             $query.Var.db2RecoverableRangeFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2RecoverableRange</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRange operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Db2
             # API Operation: RecoverableRanges
              
             $query = New-RscQueryDb2 -RecoverableRanges
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someDb2RecoverableRangeSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Db2RecoverableRangeSortBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 databaseId = @(
                     $someString
                 )
                 # OPTIONAL
                 fromTime = $someDateTime
                 # OPTIONAL
                 toTime = $someDateTime
                 # OPTIONAL
                 isArchived = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Db2RecoverableRangeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRanges operation of the 'Db2' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryDownload</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryDownload</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 3 operations in the 'Report Download' API domain: CdmUpgradesPdf, DownloadedVersionList, or PackageStatus.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryDownload creates a new query object for operations in the 'Report Download' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'Report Download' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CdmUpgradesPdf, DownloadedVersionList, or PackageStatus. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryDownload -CdmUpgradesPdf).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryDownload -CdmUpgradesPdf).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryDownload</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CdmUpgradesPdf</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadedVersionList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PackageStatus</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: CdmUpgradesPdf
              
             $query = New-RscQueryDownload -CdmUpgradesPdf
              
             # OPTIONAL
             $query.Var.downloadFilter = @{
                 # OPTIONAL
                 clusterUuids = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterNames = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterTypes = @(
                     $someString
                 )
                 # OPTIONAL
                 downloadedVersions = @(
                     $someString
                 )
                 # OPTIONAL
                 installedVersions = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterLocations = @(
                     $someString
                 )
                 # OPTIONAL
                 upgradeJobStatus = @(
                     $someString
                 )
                 # OPTIONAL
                 prechecksStatus = @(
                     $someString
                 )
                 # OPTIONAL
                 versionStatus = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadCdmUpgradesPdfReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmUpgradesPdf operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: DownloadedVersionList
              
             $query = New-RscQueryDownload -DownloadedVersionList
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GroupCount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadedVersionList operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Download
             # API Operation: PackageStatus
              
             $query = New-RscQueryDownload -PackageStatus
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadPackageStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the PackageStatus operation of the 'Report Download' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryExchange</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryExchange</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 7 operations in the 'Microsoft Exchange' API domain: Dag, Dags, Database, Databases, LiveMounts, Server, or Servers.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryExchange creates a new query object for operations in the 'Microsoft Exchange' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 7 operations in the 'Microsoft Exchange' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Dag, Dags, Database, Databases, LiveMounts, Server, or Servers. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryExchange -Dag).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryExchange -Dag).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryExchange</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Dag</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Dags</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Database</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Databases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LiveMounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Server</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Servers</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: Dag
              
             $query = New-RscQueryExchange -Dag
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExchangeDag</dev:code>
        <dev:remarks>
          <maml:para>Runs the Dag operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: Dags
              
             $query = New-RscQueryExchange -Dags
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExchangeDagConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Dags operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: Database
              
             $query = New-RscQueryExchange -Database
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExchangeDatabase</dev:code>
        <dev:remarks>
          <maml:para>Runs the Database operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: Databases
              
             $query = New-RscQueryExchange -Databases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExchangeDatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Databases operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: LiveMounts
              
             $query = New-RscQueryExchange -LiveMounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someExchangeLiveMountFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeLiveMountFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someExchangeLiveMountSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeLiveMountSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExchangeLiveMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the LiveMounts operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: Server
              
             $query = New-RscQueryExchange -Server
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExchangeServer</dev:code>
        <dev:remarks>
          <maml:para>Runs the Server operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Exchange
             # API Operation: Servers
              
             $query = New-RscQueryExchange -Servers
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExchangeServerConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Servers operation of the 'Microsoft Exchange' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryFailoverCluster</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryFailoverCluster</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 5 operations in the 'Failover Cluster' API domain: App, Apps, Host, Hosts, or TopLevelDescendants.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryFailoverCluster creates a new query object for operations in the 'Failover Cluster' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 5 operations in the 'Failover Cluster' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: App, Apps, Host, Hosts, or TopLevelDescendants. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryFailoverCluster -App).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryFailoverCluster -App).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryFailoverCluster</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">App</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Apps</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Host</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Hosts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopLevelDescendants</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: App
              
             $query = New-RscQueryFailoverCluster -App
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FailoverClusterApp</dev:code>
        <dev:remarks>
          <maml:para>Runs the App operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: Apps
              
             $query = New-RscQueryFailoverCluster -Apps
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.hostFailoverClusterRoot = $someHostFailoverClusterRoot # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostFailoverClusterRoot]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FailoverClusterAppConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Apps operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: Host
              
             $query = New-RscQueryFailoverCluster -Host
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HostFailoverCluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the Host operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: Hosts
              
             $query = New-RscQueryFailoverCluster -Hosts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.hostFailoverClusterRoot = $someHostFailoverClusterRoot # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostFailoverClusterRoot]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HostFailoverClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Hosts operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: FailoverCluster
             # API Operation: TopLevelDescendants
              
             $query = New-RscQueryFailoverCluster -TopLevelDescendants
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.hostFailoverClusterRoot = $someHostFailoverClusterRoot # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostFailoverClusterRoot]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FailoverClusterTopLevelDescendantTypeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopLevelDescendants operation of the 'Failover Cluster' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryFileset</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryFileset</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Fileset' API domain: Linux, RequestStatus, Share, Template, Templates, or Windows.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryFileset creates a new query object for operations in the 'Fileset' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Fileset' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Linux, RequestStatus, Share, Template, Templates, or Windows. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryFileset -Linux).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryFileset -Linux).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryFileset</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Linux</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Share</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Template</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Templates</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Windows</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: Linux
              
             $query = New-RscQueryFileset -Linux
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LinuxFileset</dev:code>
        <dev:remarks>
          <maml:para>Runs the Linux operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: RequestStatus
              
             $query = New-RscQueryFileset -RequestStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RequestStatus operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: Share
              
             $query = New-RscQueryFileset -Share
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ShareFileset</dev:code>
        <dev:remarks>
          <maml:para>Runs the Share operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: Template
              
             $query = New-RscQueryFileset -Template
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FilesetTemplate</dev:code>
        <dev:remarks>
          <maml:para>Runs the Template operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: Templates
              
             $query = New-RscQueryFileset -Templates
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.hostRoot = $someHostRoot # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRoot]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FilesetTemplateConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Templates operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Fileset
             # API Operation: Windows
              
             $query = New-RscQueryFileset -Windows
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: WindowsFileset</dev:code>
        <dev:remarks>
          <maml:para>Runs the Windows operation of the 'Fileset' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryGcp</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryGcp</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 16 operations in the 'Google Cloud Platform' API domain: CloudAccountMissingPermissionsForAddition, CloudAccountProjectsByFeature, CloudAccountProjectsForOauth, FeaturePermissionsForCloudAccount, GetDefaultCredentialsServiceAccount, NativeAvailableKmsCryptoKeys, NativeCompatibleMachineTypes, NativeNetworks, NativeProjectsWithAccessibleNetworks, NativeRegions, NativeStoredMachineTypes, NativeStoredMachineTypesInProject, NativeStoredNetworkNames, NativeStoredNetworkNamesInProject, NativeStoredRegions, or NativeStoredRegionsInProject.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryGcp creates a new query object for operations in the 'Google Cloud Platform' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 16 operations in the 'Google Cloud Platform' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CloudAccountMissingPermissionsForAddition, CloudAccountProjectsByFeature, CloudAccountProjectsForOauth, FeaturePermissionsForCloudAccount, GetDefaultCredentialsServiceAccount, NativeAvailableKmsCryptoKeys, NativeCompatibleMachineTypes, NativeNetworks, NativeProjectsWithAccessibleNetworks, NativeRegions, NativeStoredMachineTypes, NativeStoredMachineTypesInProject, NativeStoredNetworkNames, NativeStoredNetworkNamesInProject, NativeStoredRegions, or NativeStoredRegionsInProject. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryGcp -CloudAccountMissingPermissionsForAddition).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryGcp -CloudAccountMissingPermissionsForAddition).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryGcp</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountMissingPermissionsForAddition</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountProjectsByFeature</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudAccountProjectsForOauth</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FeaturePermissionsForCloudAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GetDefaultCredentialsServiceAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeAvailableKmsCryptoKeys</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeCompatibleMachineTypes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeNetworks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeProjectsWithAccessibleNetworks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeRegions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeStoredMachineTypes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeStoredMachineTypesInProject</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeStoredNetworkNames</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeStoredNetworkNamesInProject</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeStoredRegions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NativeStoredRegionsInProject</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountMissingPermissionsForAddition
              
             $query = New-RscQueryGcp -CloudAccountMissingPermissionsForAddition
              
             # REQUIRED
             $query.Var.sessionId = $someString
             # REQUIRED
             $query.Var.projectIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GcpCloudAccountMissingPermissionsForAddition&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountMissingPermissionsForAddition operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountProjectsByFeature
              
             $query = New-RscQueryGcp -CloudAccountProjectsByFeature
              
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             # REQUIRED
             $query.Var.projectStatusFilters = @(
                 $someCloudAccountStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountStatus]) for enum values.
             )
             # REQUIRED
             $query.Var.projectSearchText = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GcpCloudAccountProjectDetail&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountProjectsByFeature operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: CloudAccountProjectsForOauth
              
             $query = New-RscQueryGcp -CloudAccountProjectsForOauth
              
             # REQUIRED
             $query.Var.sessionId = $someString
             # REQUIRED
             $query.Var.features = @(
                 $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
             )
             # REQUIRED
             $query.Var.checkPermissions = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GcpCloudAccountProjectForOauth&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudAccountProjectsForOauth operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: FeaturePermissionsForCloudAccount
              
             $query = New-RscQueryGcp -FeaturePermissionsForCloudAccount
              
             # REQUIRED
             $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GcpPermission&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the FeaturePermissionsForCloudAccount operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: GetDefaultCredentialsServiceAccount
              
             $query = New-RscQueryGcp -GetDefaultCredentialsServiceAccount
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetDefaultCredentialsServiceAccount operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeAvailableKmsCryptoKeys
              
             $query = New-RscQueryGcp -NativeAvailableKmsCryptoKeys
              
             # REQUIRED
             $query.Var.projectId = $someString
             # REQUIRED
             $query.Var.regionName = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GcpNativeKmsCryptoKey&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeAvailableKmsCryptoKeys operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeCompatibleMachineTypes
              
             $query = New-RscQueryGcp -NativeCompatibleMachineTypes
              
             # REQUIRED
             $query.Var.targetZone = $someString
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeCompatibleMachineTypes operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeNetworks
              
             $query = New-RscQueryGcp -NativeNetworks
              
             # REQUIRED
             $query.Var.projectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GcpNativeNetwork&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeNetworks operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeProjectsWithAccessibleNetworks
              
             $query = New-RscQueryGcp -NativeProjectsWithAccessibleNetworks
              
             # REQUIRED
             $query.Var.projectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;NetworkHostProject&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeProjectsWithAccessibleNetworks operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeRegions
              
             $query = New-RscQueryGcp -NativeRegions
              
             # REQUIRED
             $query.Var.projectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GcpNativeRegion&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeRegions operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeStoredMachineTypes
              
             $query = New-RscQueryGcp -NativeStoredMachineTypes
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeStoredMachineTypes operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeStoredMachineTypesInProject
              
             $query = New-RscQueryGcp -NativeStoredMachineTypesInProject
              
             # REQUIRED
             $query.Var.projectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeStoredMachineTypesInProject operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeStoredNetworkNames
              
             $query = New-RscQueryGcp -NativeStoredNetworkNames
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeStoredNetworkNames operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeStoredNetworkNamesInProject
              
             $query = New-RscQueryGcp -NativeStoredNetworkNamesInProject
              
             # REQUIRED
             $query.Var.projectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeStoredNetworkNamesInProject operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeStoredRegions
              
             $query = New-RscQueryGcp -NativeStoredRegions
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeStoredRegions operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Gcp
             # API Operation: NativeStoredRegionsInProject
              
             $query = New-RscQueryGcp -NativeStoredRegionsInProject
              
             # REQUIRED
             $query.Var.projectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NativeStoredRegionsInProject operation of the 'Google Cloud Platform' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryGcpNative</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryGcpNative</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 7 operations in the 'Google Cloud Platform Native' API domain: Disk, Disks, GceInstance, GceInstances, Project, Projects, or StoredDiskLocations.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryGcpNative creates a new query object for operations in the 'Google Cloud Platform Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 7 operations in the 'Google Cloud Platform Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Disk, Disks, GceInstance, GceInstances, Project, Projects, or StoredDiskLocations. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryGcpNative -Disk).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryGcpNative -Disk).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryGcpNative</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Disk</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Disks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GceInstance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GceInstances</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Project</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Projects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StoredDiskLocations</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: Disk
              
             $query = New-RscQueryGcpNative -Disk
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpNativeDisk</dev:code>
        <dev:remarks>
          <maml:para>Runs the Disk operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: Disks
              
             $query = New-RscQueryGcpNative -Disks
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someGcpNativeDiskSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpNativeDiskSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.diskFilters = @{
                 # OPTIONAL
                 nameOrIdSubstringFilter = @{
                     # REQUIRED
                     nameOrIdSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 projectFilter = @{
                     # REQUIRED
                     projectIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 locationFilter = @{
                     # REQUIRED
                     locations = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 diskTypeFilter = @{
                     # REQUIRED
                     diskTypes = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 labelFilter = @{
                     # REQUIRED
                     labelFilterParams = @(
                         @{
                             # REQUIRED
                             filterType = $someGcpNativeLabelFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpNativeLabelFilterType]) for enum values.
                             # REQUIRED
                             labelKey = $someString
                             # REQUIRED
                             labelValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 orgFilter = @{
                     # REQUIRED
                     orgIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpNativeDiskConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Disks operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: GceInstance
              
             $query = New-RscQueryGcpNative -GceInstance
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpNativeGceInstance</dev:code>
        <dev:remarks>
          <maml:para>Runs the GceInstance operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: GceInstances
              
             $query = New-RscQueryGcpNative -GceInstances
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someGcpNativeGceInstanceSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpNativeGceInstanceSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.gceInstanceFilters = @{
                 # OPTIONAL
                 nameOrIdSubstringFilter = @{
                     # REQUIRED
                     nameOrIdSubstring = $someString
                 }
                 # OPTIONAL
                 projectFilter = @{
                     # REQUIRED
                     projectIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 regionFilter = @{
                     # REQUIRED
                     regions = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 machineTypeFilter = @{
                     # REQUIRED
                     machineTypes = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 networkFilter = @{
                     # REQUIRED
                     networkNames = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 labelFilter = @{
                     # REQUIRED
                     labelFilterParams = @(
                         @{
                             # REQUIRED
                             filterType = $someGcpNativeLabelFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpNativeLabelFilterType]) for enum values.
                             # REQUIRED
                             labelKey = $someString
                             # REQUIRED
                             labelValue = $someString
                         }
                     )
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 relicFilter = @{
                     # REQUIRED
                     relic = $someBoolean
                 }
                 # OPTIONAL
                 orgFilter = @{
                     # REQUIRED
                     orgIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpNativeGceInstanceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GceInstances operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: Project
              
             $query = New-RscQueryGcpNative -Project
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpNativeProject</dev:code>
        <dev:remarks>
          <maml:para>Runs the Project operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: Projects
              
             $query = New-RscQueryGcpNative -Projects
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someGcpNativeProjectSortFields # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpNativeProjectSortFields]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.projectFilters = @{
                 # OPTIONAL
                 nameOrNumberSubstringFilter = @{
                     # REQUIRED
                     nameOrNumberSubstring = $someString
                 }
                 # OPTIONAL
                 idSubstringFilter = @{
                     # REQUIRED
                     idSubstring = $someString
                 }
                 # OPTIONAL
                 effectiveSlaFilter = @{
                     # REQUIRED
                     effectiveSlaIds = @(
                         $someString
                     )
                 }
             }
             # OPTIONAL
             $query.Var.authorizedOperationFilter = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values.
             # OPTIONAL
             $query.Var.workloadHierarchy = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GcpNativeProjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Projects operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: GcpNative
             # API Operation: StoredDiskLocations
              
             $query = New-RscQueryGcpNative -StoredDiskLocations
              
             # OPTIONAL
             $query.Var.projectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListStoredDiskLocationsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StoredDiskLocations operation of the 'Google Cloud Platform Native' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryHost</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryHost</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Host' API domain: Diagnosis, PhysicalHost, PhysicalHosts, Search, Share, or Shares.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryHost creates a new query object for operations in the 'Host' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Host' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Diagnosis, PhysicalHost, PhysicalHosts, Search, Share, or Shares. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryHost -Diagnosis).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryHost -Diagnosis).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryHost</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Diagnosis</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PhysicalHost</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PhysicalHosts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Search</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Share</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Shares</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: Diagnosis
              
             $query = New-RscQueryHost -Diagnosis
              
             # REQUIRED
             $query.Var.id = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HostDiagnosisSummary</dev:code>
        <dev:remarks>
          <maml:para>Runs the Diagnosis operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: PhysicalHost
              
             $query = New-RscQueryHost -PhysicalHost
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PhysicalHost</dev:code>
        <dev:remarks>
          <maml:para>Runs the PhysicalHost operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: PhysicalHosts
              
             $query = New-RscQueryHost -PhysicalHosts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.hostRoot = $someHostRoot # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRoot]) for enum values.
             # OPTIONAL
             $query.Var.isBulkPolicyAssignmentFlow = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PhysicalHostConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the PhysicalHosts operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: Search
              
             $query = New-RscQueryHost -Search
              
             # REQUIRED
             $query.Var.id = $someString
             # REQUIRED
             $query.Var.path = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SearchResponseListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Search operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: Share
              
             $query = New-RscQueryHost -Share
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HostShare</dev:code>
        <dev:remarks>
          <maml:para>Runs the Share operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Host
             # API Operation: Shares
              
             $query = New-RscQueryHost -Shares
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HostShareConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Shares operation of the 'Host' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryHyperv</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryHyperv</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 16 operations in the 'Microsoft Hyper-V' API domain: Cluster, HostAsyncRequestStatus, Mounts, Scvmm, ScvmmAsyncRequestStatus, Scvmms, Server, Servers, ServersPaginated, TopLevelDescendants, UniqueServersCount, VirtualMachine, VirtualMachineAsyncRequestStatus, VirtualMachineLevelFileInfo, VirtualMachines, or VmDetail.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryHyperv creates a new query object for operations in the 'Microsoft Hyper-V' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 16 operations in the 'Microsoft Hyper-V' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Cluster, HostAsyncRequestStatus, Mounts, Scvmm, ScvmmAsyncRequestStatus, Scvmms, Server, Servers, ServersPaginated, TopLevelDescendants, UniqueServersCount, VirtualMachine, VirtualMachineAsyncRequestStatus, VirtualMachineLevelFileInfo, VirtualMachines, or VmDetail. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryHyperv -Cluster).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryHyperv -Cluster).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryHyperv</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Cluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HostAsyncRequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Scvmm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ScvmmAsyncRequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Scvmms</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Server</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Servers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ServersPaginated</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopLevelDescendants</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UniqueServersCount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualMachine</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualMachineAsyncRequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualMachineLevelFileInfo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VirtualMachines</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VmDetail</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: Cluster
              
             $query = New-RscQueryHyperv -Cluster
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HyperVcluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the Cluster operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: HostAsyncRequestStatus
              
             $query = New-RscQueryHyperv -HostAsyncRequestStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the HostAsyncRequestStatus operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: Mounts
              
             $query = New-RscQueryHyperv -Mounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someHypervLiveMountFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HypervLiveMountFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someHypervLiveMountSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HypervLiveMountSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HyperVliveMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Mounts operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: Scvmm
              
             $query = New-RscQueryHyperv -Scvmm
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HyperVscvmm</dev:code>
        <dev:remarks>
          <maml:para>Runs the Scvmm operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: ScvmmAsyncRequestStatus
              
             $query = New-RscQueryHyperv -ScvmmAsyncRequestStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ScvmmAsyncRequestStatus operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: Scvmms
              
             $query = New-RscQueryHyperv -Scvmms
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HyperVscvmmConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Scvmms operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: Server
              
             $query = New-RscQueryHyperv -Server
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HypervServer</dev:code>
        <dev:remarks>
          <maml:para>Runs the Server operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: Servers
              
             $query = New-RscQueryHyperv -Servers
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 effectiveSlaDomainId = $someString
                 # OPTIONAL
                 limit = $someInt
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 offset = $someInt
                 # OPTIONAL
                 primaryClusterId = $someString
                 # OPTIONAL
                 slaAssignment = $someInternalQueryHypervHostRequestSlaAssignment # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InternalQueryHypervHostRequestSlaAssignment]) for enum values.
                 # OPTIONAL
                 sortBy = $someInternalQueryHypervHostRequestSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InternalQueryHypervHostRequestSortBy]) for enum values.
                 # OPTIONAL
                 sortOrder = $someInternalQueryHypervHostRequestSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InternalQueryHypervHostRequestSortOrder]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HypervHostSummaryListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Servers operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: ServersPaginated
              
             $query = New-RscQueryHyperv -ServersPaginated
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HypervServerConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ServersPaginated operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: TopLevelDescendants
              
             $query = New-RscQueryHyperv -TopLevelDescendants
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HypervTopLevelDescendantTypeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopLevelDescendants operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: UniqueServersCount
              
             $query = New-RscQueryHyperv -UniqueServersCount
              
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Int32</dev:code>
        <dev:remarks>
          <maml:para>Runs the UniqueServersCount operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: VirtualMachine
              
             $query = New-RscQueryHyperv -VirtualMachine
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HyperVvirtualMachine</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualMachine operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: VirtualMachineAsyncRequestStatus
              
             $query = New-RscQueryHyperv -VirtualMachineAsyncRequestStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualMachineAsyncRequestStatus operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: VirtualMachineLevelFileInfo
              
             $query = New-RscQueryHyperv -VirtualMachineLevelFileInfo
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 shouldRetrieveConfigFiles = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HypervVirtualMachineSnapshotFileDetails</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualMachineLevelFileInfo operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: VirtualMachines
              
             $query = New-RscQueryHyperv -VirtualMachines
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HyperVvirtualMachineConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the VirtualMachines operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Hyperv
             # API Operation: VmDetail
              
             $query = New-RscQueryHyperv -VmDetail
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HypervVirtualMachineDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the VmDetail operation of the 'Microsoft Hyper-V' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryIntegration</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryIntegration</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 2 operations in the 'Integration' API domain: Integration, or Integrations.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryIntegration creates a new query object for operations in the 'Integration' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 2 operations in the 'Integration' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Integration, or Integrations. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryIntegration -Integration).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryIntegration -Integration).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryIntegration</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Integration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Integrations</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: Integration
              
             $query = New-RscQueryIntegration -Integration
              
             # REQUIRED
             $query.Var.id = $someInt
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ReadIntegrationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Integration operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Integration
             # API Operation: Integrations
              
             $query = New-RscQueryIntegration -Integrations
              
             # REQUIRED
             $query.Var.integrationTypes = @(
                 $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values.
             )
             # OPTIONAL
             $query.Var.nameFilter = $someString
             # OPTIONAL
             $query.Var.integrationSortBy = $someIntegrationSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationSortBy]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListIntegrationsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Integrations operation of the 'Integration' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryK8s</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryK8s</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 12 operations in the 'Kubernetes' API domain: AppManifest, Cluster, Clusters, K8sCluster, K8sClusters, Namespace, Namespaces, ProtectionSet, ProtectionSetSnapshots, ProtectionSets, ReplicaSnapshotInfos, or SnapshotInfo.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryK8s creates a new query object for operations in the 'Kubernetes' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 12 operations in the 'Kubernetes' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AppManifest, Cluster, Clusters, K8sCluster, K8sClusters, Namespace, Namespaces, ProtectionSet, ProtectionSetSnapshots, ProtectionSets, ReplicaSnapshotInfos, or SnapshotInfo. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryK8s -AppManifest).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryK8s -AppManifest).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryK8s</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AppManifest</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Cluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Clusters</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">K8sCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">K8sClusters</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Namespace</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Namespaces</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ProtectionSet</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ProtectionSetSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ProtectionSets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ReplicaSnapshotInfos</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotInfo</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: AppManifest
              
             $query = New-RscQueryK8s -AppManifest
              
             # REQUIRED
             $query.Var.app = $someString
             # REQUIRED
             $query.Var.version = $someString
             # REQUIRED
             $query.Var.retrieveLatestVersion = $someBoolean
             # OPTIONAL
             $query.Var.targetVersion = $someString
             # OPTIONAL
             $query.Var.k8sClusterId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sAppManifest</dev:code>
        <dev:remarks>
          <maml:para>Runs the AppManifest operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: Cluster
              
             $query = New-RscQueryK8s -Cluster
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: KubernetesCluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the Cluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: Clusters
              
             $query = New-RscQueryK8s -Clusters
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: KubernetesClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Clusters operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: K8sCluster
              
             $query = New-RscQueryK8s -K8sCluster
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sCluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the K8sCluster operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: K8sClusters
              
             $query = New-RscQueryK8s -K8sClusters
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the K8sClusters operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: Namespace
              
             $query = New-RscQueryK8s -Namespace
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sNamespace</dev:code>
        <dev:remarks>
          <maml:para>Runs the Namespace operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: Namespaces
              
             $query = New-RscQueryK8s -Namespaces
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.k8sClusterId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sNamespaceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Namespaces operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: ProtectionSet
              
             $query = New-RscQueryK8s -ProtectionSet
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: KubernetesProtectionSet</dev:code>
        <dev:remarks>
          <maml:para>Runs the ProtectionSet operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: ProtectionSetSnapshots
              
             $query = New-RscQueryK8s -ProtectionSetSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sSnapshotSummaryListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ProtectionSetSnapshots operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: ProtectionSets
              
             $query = New-RscQueryK8s -ProtectionSets
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.k8sClusterOptionalId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: KubernetesProtectionSetConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ProtectionSets operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: ReplicaSnapshotInfos
              
             $query = New-RscQueryK8s -ReplicaSnapshotInfos
              
             # REQUIRED
             $query.Var.snapshotId = $someString
             # REQUIRED
             $query.Var.snappableId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;ReplicatedSnapshotInfo&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ReplicaSnapshotInfos operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: K8s
             # API Operation: SnapshotInfo
              
             $query = New-RscQueryK8s -SnapshotInfo
              
             # REQUIRED
             $query.Var.snapshotId = $someString
             # REQUIRED
             $query.Var.namespaceId = $someString
             # REQUIRED
             $query.Var.isReplica = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: K8sSnapshotInfo</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotInfo operation of the 'Kubernetes' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryLdap</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryLdap</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 3 operations in the 'LDAP' API domain: AuthorizedPrincipalList, IntegrationList, or PrincipalList.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryLdap creates a new query object for operations in the 'LDAP' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'LDAP' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AuthorizedPrincipalList, IntegrationList, or PrincipalList. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryLdap -AuthorizedPrincipalList).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryLdap -AuthorizedPrincipalList).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryLdap</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AuthorizedPrincipalList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IntegrationList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PrincipalList</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ldap
             # API Operation: AuthorizedPrincipalList
              
             $query = New-RscQueryLdap -AuthorizedPrincipalList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someLdapAuthorizedPrincipalFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LdapAuthorizedPrincipalFieldEnum]) for enum values.
             # REQUIRED
             $query.Var.searchText = $someString
             # OPTIONAL
             $query.Var.roleIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AuthorizedPrincipalConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AuthorizedPrincipalList operation of the 'LDAP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ldap
             # API Operation: IntegrationList
              
             $query = New-RscQueryLdap -IntegrationList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someLdapIntegrationFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LdapIntegrationFieldEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LdapIntegrationConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the IntegrationList operation of the 'LDAP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ldap
             # API Operation: PrincipalList
              
             $query = New-RscQueryLdap -PrincipalList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someLdapPrincipalFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LdapPrincipalFieldEnum]) for enum values.
             # REQUIRED
             $query.Var.id = $someString
             # REQUIRED
             $query.Var.searchText = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PrincipalConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the PrincipalList operation of the 'LDAP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryM365</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryM365</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 9 operations in the 'Microsoft 365' API domain: DayToDayModeBackupStats, DayToDayModeStats, DirectoryObjectAttributes, LicenseEntitlement, OnboardingModeBackupStats, OnboardingModeStats, OrgBackupLocations, OrgOperationModes, or Regions.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryM365 creates a new query object for operations in the 'Microsoft 365' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 9 operations in the 'Microsoft 365' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: DayToDayModeBackupStats, DayToDayModeStats, DirectoryObjectAttributes, LicenseEntitlement, OnboardingModeBackupStats, OnboardingModeStats, OrgBackupLocations, OrgOperationModes, or Regions. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryM365 -DayToDayModeBackupStats).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryM365 -DayToDayModeBackupStats).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryM365</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">DayToDayModeBackupStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DayToDayModeStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DirectoryObjectAttributes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LicenseEntitlement</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OnboardingModeBackupStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OnboardingModeStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OrgBackupLocations</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OrgOperationModes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Regions</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: DayToDayModeBackupStats
              
             $query = New-RscQueryM365 -DayToDayModeBackupStats
              
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.dashboardWorkloadType = $someM365DashboardWorkloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.M365DashboardWorkloadType]) for enum values.
             # REQUIRED
             $query.Var.backupStatsTimeRange = $someBackupStatsTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.BackupStatsTimeRange]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DayToDayModeBackupStats</dev:code>
        <dev:remarks>
          <maml:para>Runs the DayToDayModeBackupStats operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: DayToDayModeStats
              
             $query = New-RscQueryM365 -DayToDayModeStats
              
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.dashboardWorkloadType = $someM365DashboardWorkloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.M365DashboardWorkloadType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DayToDayModeStats</dev:code>
        <dev:remarks>
          <maml:para>Runs the DayToDayModeStats operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: DirectoryObjectAttributes
              
             $query = New-RscQueryM365 -DirectoryObjectAttributes
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 orgId = $someString
                 # REQUIRED
                 objectType = $someDirectoryObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DirectoryObjectType]) for enum values.
                 # REQUIRED
                 attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values.
                 # OPTIONAL
                 searchTextPrefix = $someString
                 # REQUIRED
                 maxResults = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListO365DirectoryObjectAttributesResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the DirectoryObjectAttributes operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: LicenseEntitlement
              
             $query = New-RscQueryM365 -LicenseEntitlement
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: M365LicenseEntitlementReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the LicenseEntitlement operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: OnboardingModeBackupStats
              
             $query = New-RscQueryM365 -OnboardingModeBackupStats
              
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.dashboardWorkloadType = $someM365DashboardWorkloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.M365DashboardWorkloadType]) for enum values.
             # REQUIRED
             $query.Var.backupStatsTimeRange = $someBackupStatsTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.BackupStatsTimeRange]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OnboardingModeBackupStats</dev:code>
        <dev:remarks>
          <maml:para>Runs the OnboardingModeBackupStats operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: OnboardingModeStats
              
             $query = New-RscQueryM365 -OnboardingModeStats
              
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.dashboardWorkloadType = $someM365DashboardWorkloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.M365DashboardWorkloadType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OnboardingModeStats</dev:code>
        <dev:remarks>
          <maml:para>Runs the OnboardingModeStats operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: OrgBackupLocations
              
             $query = New-RscQueryM365 -OrgBackupLocations
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: M365OrgBackupLocations</dev:code>
        <dev:remarks>
          <maml:para>Runs the OrgBackupLocations operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: OrgOperationModes
              
             $query = New-RscQueryM365 -OrgOperationModes
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: M365OrgOperationModes</dev:code>
        <dev:remarks>
          <maml:para>Runs the OrgOperationModes operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: M365
             # API Operation: Regions
              
             $query = New-RscQueryM365 -Regions
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: M365RegionsResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the Regions operation of the 'Microsoft 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryManagedVolume</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryManagedVolume</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Managed Volume' API domain: InventoryStats, LiveMounts, ManagedVolume, or ManagedVolumes.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryManagedVolume creates a new query object for operations in the 'Managed Volume' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Managed Volume' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: InventoryStats, LiveMounts, ManagedVolume, or ManagedVolumes. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryManagedVolume -InventoryStats).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryManagedVolume -InventoryStats).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryManagedVolume</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">InventoryStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LiveMounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedVolume</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedVolumes</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: InventoryStats
              
             $query = New-RscQueryManagedVolume -InventoryStats
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ManagedVolumeInventoryStats</dev:code>
        <dev:remarks>
          <maml:para>Runs the InventoryStats operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: LiveMounts
              
             $query = New-RscQueryManagedVolume -LiveMounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ManagedVolumeMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the LiveMounts operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: ManagedVolume
              
             $query = New-RscQueryManagedVolume -ManagedVolume
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ManagedVolume</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManagedVolume operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ManagedVolume
             # API Operation: ManagedVolumes
              
             $query = New-RscQueryManagedVolume -ManagedVolumes
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ManagedVolumeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManagedVolumes operation of the 'Managed Volume' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryMisc</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryMisc</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 185 operations in the 'Miscellaneous' API domain: ActiveCustomAnalyzers, AdGroupMembers, AdVolumeExports, AgentDeploymentSetting, AgentDeploymentSettings, AllowedOrgAdminOperations, AnalyzerGroups, AnalyzerUsages, AnomalyResultOpt, AnomalyResults, AnomalyResultsGrouped, AreMultiGeoBackupsEnabled, AuthorizationsForGlobalResource, AuthorizationsForObject, AuthorizationsForObjects, AwsComputeSettings, AzureResourceGroups, AzureSubnets, BackupThrottleSettings, BrowseCalendar, BrowseContacts, BrowseFolder, BrowseOnedrive, BrowseTeamsChannels, BrowseTeamsDrive, CdmGuestCredentials, CdmInventorySubHierarchyRoot, CdmOvaDetails, CdmVersionCheck, CdpVmsInfos, CheckCloudComputeConnectivityJobProgress, CheckLatestVersionMgmtAppExists, CloudDirectNasExport, CloudDirectShares, CloudDirectSites, CloudDirectSystems, ConfiguredGroupMembers, Crawl, Crawls, CrossAccountPairs, CurrentIpAddress, CurrentOrg, CurrentOrgAuthDomainConfig, CurrentOrgIdentityProviders, CustomAnalyzer, DashboardSummary, DatagovSecDesc, DecryptExportUrl, DeploymentIpAddresses, DeploymentVersion, DhrcActiveRecommendations, DhrcLatestMetrics, DhrcScores, DiffFmd, DiscoverNodes, DiscoveryTimeline, DistributionListDigest, DistributionListDigests, DummyFieldWithAdminOnlyTag, EdgeWindowsToolLink, EffectiveRbacPermissions, EventDigests, ExternalDeploymentName, FailedRestoreItemsInfo, FederatedLoginStatus, FileActivities, GeoLocationList, GetAllRolesInOrgList, GetCdmReleaseDetailsForVersionFromSupportPortal, GetCdmReleaseDetailsFromSupportPortal, GetGroupCountByPrechecksStatus, GetGroupCountByUpgradeJobStatus, GetGroupCountByVersionStatus, GetKorgTaskchainStatus, GetPermissions, GetRolesByIds, GetUserDownloads, GlobalFileSearch, GlobalLockoutConfig, GlobalMfaSetting, GlobalSearchResults, GroupsInCurrentAndDescendantOrganization, GuestCredentials, GuestCredentialsV2, HasIdpConfigured, HelpContentSnippets, HierarchyObject, HierarchyObjects, InstalledVersionList, InventoryRoot, InventorySubHierarchyRoot, InventoryWorkloads, InvestigationCsvDownloadLink, IpWhitelist, IsIpmiEnabled, IsLoggedIntoRubrikSupportPortal, IsReplaceNodeTprConfigured, IsSfdcReachable, IsUpgradeAvailable, IsUpgradeRecommended, IsZrsAvailableForLocation, Issue, Issues, IssuesJobIds, JobInfo, KnowledgeBaseArticle, LambdaSettings, LicensedProducts, LockoutConfig, MaxProtectedAppsCount, MfaSetting, MinimumCdmVersionForFeatureSet, NetworkThrottle, NfAnomalyResults, NfAnomalyResultsGrouped, NodeRemovalCancelPermission, NodeToReplace, NodeTunnelStatuses, NosqlStorageLocations, OauthCodesForEdgeReg, ObjectFiles, ObjectTypeAccessSummary, ObjectsAlreadyAssignedToOrgs, Org, Orgs, OrgsByIds, OrgsForPrincipal, PasskeyConfig, PasskeyInfo, PendingAction, PendingActions, PhoenixRolloutProgress, PipelineHealthForTimeRange, PolarisInventorySubHierarchyRoot, PolicyDetails, PolicyObj, PolicyObjs, PrechecksStatus, PrechecksStatusWithNextJobInfo, PrivateContainerRegistry, ProductDocumentation, ProtectedObjectsList, ProtectedVolumesCount, QuarantinedDetailsForWorkload, QueryDatastoreFreespaceThresholds, RemovedNodeDetails, RoleTemplates, SearchFileByPrefix, SnoozedDirectories, SupportBundle, SupportUserAccesses, TableFilters, Targets, TaskDetailGroupByList, TaskDetailList, Taskchain, TeamChannelNameAvailable, TotpConfigStatus, TprStatusForNodeRemoval, TunnelStatus, UniqueVcdCount, UnmanagedObjects, UnmanagedObjectsSupportedTypes, UpgradeStatus, UserActivities, UserAnalyzerAccess, UserAuditList, UserDetail, UserFile, UserFiles, UserGroups, UserNotifications, UserSessionManagementConfig, UserSettings, UsersInCurrentAndDescendantOrganization, UsersOnAccountList, ValidateOrgName, VcdVappVms, VerifyTotp, VirtualMachineFiles, VmRecoveryJobsInfo, VolumeGroupMounts, WorkloadAlertSetting, WorkloadAnomalies, or WorkloadForeverId.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryMisc creates a new query object for operations in the 'Miscellaneous' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 185 operations in the 'Miscellaneous' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ActiveCustomAnalyzers, AdGroupMembers, AdVolumeExports, AgentDeploymentSetting, AgentDeploymentSettings, AllowedOrgAdminOperations, AnalyzerGroups, AnalyzerUsages, AnomalyResultOpt, AnomalyResults, AnomalyResultsGrouped, AreMultiGeoBackupsEnabled, AuthorizationsForGlobalResource, AuthorizationsForObject, AuthorizationsForObjects, AwsComputeSettings, AzureResourceGroups, AzureSubnets, BackupThrottleSettings, BrowseCalendar, BrowseContacts, BrowseFolder, BrowseOnedrive, BrowseTeamsChannels, BrowseTeamsDrive, CdmGuestCredentials, CdmInventorySubHierarchyRoot, CdmOvaDetails, CdmVersionCheck, CdpVmsInfos, CheckCloudComputeConnectivityJobProgress, CheckLatestVersionMgmtAppExists, CloudDirectNasExport, CloudDirectShares, CloudDirectSites, CloudDirectSystems, ConfiguredGroupMembers, Crawl, Crawls, CrossAccountPairs, CurrentIpAddress, CurrentOrg, CurrentOrgAuthDomainConfig, CurrentOrgIdentityProviders, CustomAnalyzer, DashboardSummary, DatagovSecDesc, DecryptExportUrl, DeploymentIpAddresses, DeploymentVersion, DhrcActiveRecommendations, DhrcLatestMetrics, DhrcScores, DiffFmd, DiscoverNodes, DiscoveryTimeline, DistributionListDigest, DistributionListDigests, DummyFieldWithAdminOnlyTag, EdgeWindowsToolLink, EffectiveRbacPermissions, EventDigests, ExternalDeploymentName, FailedRestoreItemsInfo, FederatedLoginStatus, FileActivities, GeoLocationList, GetAllRolesInOrgList, GetCdmReleaseDetailsForVersionFromSupportPortal, GetCdmReleaseDetailsFromSupportPortal, GetGroupCountByPrechecksStatus, GetGroupCountByUpgradeJobStatus, GetGroupCountByVersionStatus, GetKorgTaskchainStatus, GetPermissions, GetRolesByIds, GetUserDownloads, GlobalFileSearch, GlobalLockoutConfig, GlobalMfaSetting, GlobalSearchResults, GroupsInCurrentAndDescendantOrganization, GuestCredentials, GuestCredentialsV2, HasIdpConfigured, HelpContentSnippets, HierarchyObject, HierarchyObjects, InstalledVersionList, InventoryRoot, InventorySubHierarchyRoot, InventoryWorkloads, InvestigationCsvDownloadLink, IpWhitelist, IsIpmiEnabled, IsLoggedIntoRubrikSupportPortal, IsReplaceNodeTprConfigured, IsSfdcReachable, IsUpgradeAvailable, IsUpgradeRecommended, IsZrsAvailableForLocation, Issue, Issues, IssuesJobIds, JobInfo, KnowledgeBaseArticle, LambdaSettings, LicensedProducts, LockoutConfig, MaxProtectedAppsCount, MfaSetting, MinimumCdmVersionForFeatureSet, NetworkThrottle, NfAnomalyResults, NfAnomalyResultsGrouped, NodeRemovalCancelPermission, NodeToReplace, NodeTunnelStatuses, NosqlStorageLocations, OauthCodesForEdgeReg, ObjectFiles, ObjectTypeAccessSummary, ObjectsAlreadyAssignedToOrgs, Org, Orgs, OrgsByIds, OrgsForPrincipal, PasskeyConfig, PasskeyInfo, PendingAction, PendingActions, PhoenixRolloutProgress, PipelineHealthForTimeRange, PolarisInventorySubHierarchyRoot, PolicyDetails, PolicyObj, PolicyObjs, PrechecksStatus, PrechecksStatusWithNextJobInfo, PrivateContainerRegistry, ProductDocumentation, ProtectedObjectsList, ProtectedVolumesCount, QuarantinedDetailsForWorkload, QueryDatastoreFreespaceThresholds, RemovedNodeDetails, RoleTemplates, SearchFileByPrefix, SnoozedDirectories, SupportBundle, SupportUserAccesses, TableFilters, Targets, TaskDetailGroupByList, TaskDetailList, Taskchain, TeamChannelNameAvailable, TotpConfigStatus, TprStatusForNodeRemoval, TunnelStatus, UniqueVcdCount, UnmanagedObjects, UnmanagedObjectsSupportedTypes, UpgradeStatus, UserActivities, UserAnalyzerAccess, UserAuditList, UserDetail, UserFile, UserFiles, UserGroups, UserNotifications, UserSessionManagementConfig, UserSettings, UsersInCurrentAndDescendantOrganization, UsersOnAccountList, ValidateOrgName, VcdVappVms, VerifyTotp, VirtualMachineFiles, VmRecoveryJobsInfo, VolumeGroupMounts, WorkloadAlertSetting, WorkloadAnomalies, or WorkloadForeverId. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMisc -ActiveCustomAnalyzers).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMisc -ActiveCustomAnalyzers).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryMisc</maml:name>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters />
    <command:inputTypes />
    <command:returnValues />
    <maml:alertSet>
      <maml:alert />
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ActiveCustomAnalyzers
              
             $query = New-RscQueryMisc -ActiveCustomAnalyzers
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AnalyzerConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ActiveCustomAnalyzers operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AdGroupMembers
              
             $query = New-RscQueryMisc -AdGroupMembers
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.adGroupSpec = @{
                 # REQUIRED
                 naturalId = $someString
                 # OPTIONAL
                 displayName = $someString
                 # REQUIRED
                 filterAttributes = @(
                     @{
                         # OPTIONAL
                         filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values.
                         # OPTIONAL
                         attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values.
                         # OPTIONAL
                         attributeKey = $someString
                         # OPTIONAL
                         attributeValue = $someString
                         # OPTIONAL
                         dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values.
                     }
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365AdGroupMemberConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AdGroupMembers operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AdVolumeExports
              
             $query = New-RscQueryMisc -AdVolumeExports
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someAdVolumeExportFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AdVolumeExportFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someAdVolumeExportSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AdVolumeExportSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AdVolumeExportConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AdVolumeExports operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AgentDeploymentSetting
              
             $query = New-RscQueryMisc -AgentDeploymentSetting
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AgentDeploymentSettings</dev:code>
        <dev:remarks>
          <maml:para>Runs the AgentDeploymentSetting operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AgentDeploymentSettings
              
             $query = New-RscQueryMisc -AgentDeploymentSettings
              
             # REQUIRED
             $query.Var.clusterUuids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AgentDeploymentSettingsInfo&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AgentDeploymentSettings operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AllowedOrgAdminOperations
              
             $query = New-RscQueryMisc -AllowedOrgAdminOperations
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;Operation&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AllowedOrgAdminOperations operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AnalyzerGroups
              
             $query = New-RscQueryMisc -AnalyzerGroups
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AnalyzerGroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AnalyzerGroups operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AnalyzerUsages
              
             $query = New-RscQueryMisc -AnalyzerUsages
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AnalyzerUsageConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AnalyzerUsages operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AnomalyResultOpt
              
             $query = New-RscQueryMisc -AnomalyResultOpt
              
             # OPTIONAL
             $query.Var.clusterUuid = $someString
             # OPTIONAL
             $query.Var.snapshotId = $someString
             # OPTIONAL
             $query.Var.workloadId = $someString
             # OPTIONAL
             $query.Var.anomalyId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetAnomalyDetailsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AnomalyResultOpt operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AnomalyResults
              
             $query = New-RscQueryMisc -AnomalyResults
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someAnomalyResultSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnomalyResultSortBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 managedId = @(
                     $someString
                 )
                 # OPTIONAL
                 startTime = $someDateTime
                 # OPTIONAL
                 endTime = $someDateTime
                 # OPTIONAL
                 isAnomaly = $someBoolean
                 # OPTIONAL
                 workloadFid = @(
                     $someString
                 )
             }
             # OPTIONAL
             $query.Var.timezoneOffset = $someSingle
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AnomalyResultConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AnomalyResults operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AnomalyResultsGrouped
              
             $query = New-RscQueryMisc -AnomalyResultsGrouped
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.groupBy = $someAnomalyResultGroupBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnomalyResultGroupBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 managedId = @(
                     $someString
                 )
                 # OPTIONAL
                 startTime = $someDateTime
                 # OPTIONAL
                 endTime = $someDateTime
                 # OPTIONAL
                 isAnomaly = $someBoolean
                 # OPTIONAL
                 workloadFid = @(
                     $someString
                 )
             }
             # OPTIONAL
             $query.Var.timezoneOffset = $someSingle
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AnomalyResultGroupedDataConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AnomalyResultsGrouped operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AreMultiGeoBackupsEnabled
              
             $query = New-RscQueryMisc -AreMultiGeoBackupsEnabled
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the AreMultiGeoBackupsEnabled operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AuthorizationsForGlobalResource
              
             $query = New-RscQueryMisc -AuthorizationsForGlobalResource
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;Operation&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AuthorizationsForGlobalResource operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AuthorizationsForObject
              
             $query = New-RscQueryMisc -AuthorizationsForObject
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;Operation&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AuthorizationsForObject operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AuthorizationsForObjects
              
             $query = New-RscQueryMisc -AuthorizationsForObjects
              
             # REQUIRED
             $query.Var.fids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AuthorizedOperations&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AuthorizationsForObjects operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AwsComputeSettings
              
             $query = New-RscQueryMisc -AwsComputeSettings
              
             # OPTIONAL
             $query.Var.sortBy = $someAwsCloudComputeSettingQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudComputeSettingQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someAwsCloudComputeSettingFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudComputeSettingFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
             }
             )
             # OPTIONAL
             $query.Var.contextFilter = $someContextFilterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ContextFilterTypeEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AwsComputeSettings&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AwsComputeSettings operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AzureResourceGroups
              
             $query = New-RscQueryMisc -AzureResourceGroups
              
             # REQUIRED
             $query.Var.cloudAccountId = $someString
             # REQUIRED
             $query.Var.azureRegion = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AzureResourceGroups operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: AzureSubnets
              
             $query = New-RscQueryMisc -AzureSubnets
              
             # REQUIRED
             $query.Var.subnetRequest = @{
                 # OPTIONAL
                 cloudAccountId = $someString
                 # OPTIONAL
                 resourceGroup = $someString
                 # OPTIONAL
                 vnetName = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AzureSubnets operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BackupThrottleSettings
              
             $query = New-RscQueryMisc -BackupThrottleSettings
              
             # REQUIRED
             $query.Var.clusterUuids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;BackupThrottleSetting&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupThrottleSettings operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BrowseCalendar
              
             $query = New-RscQueryMisc -BrowseCalendar
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.folderId = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.calendarSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someCalendarSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 emailAddresses = @(
                     @{
                         # OPTIONAL
                         emailAddress = $someString
                         # OPTIONAL
                         filterType = $someCalendarEmailAddressFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarEmailAddressFilterType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 timerange = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someO365CalendarSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365CalendarSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 recurrenceFilter = @{
                     # OPTIONAL
                     recurrenceType = $someCalendarRecurrenceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarRecurrenceType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseCalendar operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BrowseContacts
              
             $query = New-RscQueryMisc -BrowseContacts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.folderId = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.contactsSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someO365ContactsSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365ContactsSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseContacts operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BrowseFolder
              
             $query = New-RscQueryMisc -BrowseFolder
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.folderId = $someString
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseFolder operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BrowseOnedrive
              
             $query = New-RscQueryMisc -BrowseOnedrive
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.folderId = $someString
             # OPTIONAL
             $query.Var.onedriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseOnedrive operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BrowseTeamsChannels
              
             $query = New-RscQueryMisc -BrowseTeamsChannels
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.channelMembershipTypeFilter = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
             # OPTIONAL
             $query.Var.nameFilter = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365TeamsChannelConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseTeamsChannels operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: BrowseTeamsDrive
              
             $query = New-RscQueryMisc -BrowseTeamsDrive
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.folderId = $someString
             # OPTIONAL
             $query.Var.teamsDriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseTeamsDrive operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CdmGuestCredentials
              
             $query = New-RscQueryMisc -CdmGuestCredentials
              
             # REQUIRED
             $query.Var.clusterUuids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CdmGuestCredential&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmGuestCredentials operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CdmInventorySubHierarchyRoot
              
             $query = New-RscQueryMisc -CdmInventorySubHierarchyRoot
              
             # REQUIRED
             $query.Var.rootEnum = $someInventorySubHierarchyRootEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventorySubHierarchyRootEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmInventorySubHierarchyRoot</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmInventorySubHierarchyRoot operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CdmOvaDetails
              
             $query = New-RscQueryMisc -CdmOvaDetails
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CdmOvaDetail&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmOvaDetails operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CdmVersionCheck
              
             $query = New-RscQueryMisc -CdmVersionCheck
              
             # REQUIRED
             $query.Var.featureToCdmVersion = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 featureType = $someCdmFeatureFlagType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmFeatureFlagType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FeatureCdmVersionReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmVersionCheck operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CdpVmsInfos
              
             $query = New-RscQueryMisc -CdpVmsInfos
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.allCdpVmInfoSort = @{
                 # OPTIONAL
                 type = $someCdpPerfDashboardSortType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdpPerfDashboardSortType]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
             # OPTIONAL
             $query.Var.allCdpVmInfoFilter = @(
                 @{
                     # OPTIONAL
                     filterField = $someCdpPerfDashboardFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdpPerfDashboardFilterField]) for enum values.
                     # OPTIONAL
                     sourceClusterUuids = @(
                         $someString
                     )
                     # OPTIONAL
                     slaDomainIds = @(
                         $someString
                     )
                     # OPTIONAL
                     localStatus = @(
                         $someCdpLocalStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdpLocalStatus]) for enum values.
                     )
                     # OPTIONAL
                     replicationStatus = @(
                         $someCdpReplicationStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdpReplicationStatus]) for enum values.
                     )
                     # OPTIONAL
                     cdpIoFilterStatus = @(
                         $someIoFilterStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IoFilterStatus]) for enum values.
                     )
                     # OPTIONAL
                     vmName = $someString
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdpVmInfoConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdpVmsInfos operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CheckCloudComputeConnectivityJobProgress
              
             $query = New-RscQueryMisc -CheckCloudComputeConnectivityJobProgress
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckCloudComputeConnectivityJobProgress operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 32 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CheckLatestVersionMgmtAppExists
              
             $query = New-RscQueryMisc -CheckLatestVersionMgmtAppExists
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 o365OrgId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CheckLatestVersionMgmtAppExistsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CheckLatestVersionMgmtAppExists operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 33 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CloudDirectNasExport
              
             $query = New-RscQueryMisc -CloudDirectNasExport
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudDirectNasExport</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectNasExport operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 34 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CloudDirectShares
              
             $query = New-RscQueryMisc -CloudDirectShares
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 systemName = $someString
                 # REQUIRED
                 exportType = $someShareTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ShareTypeEnum]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;ShareExportIdPair&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectShares operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 35 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CloudDirectSites
              
             $query = New-RscQueryMisc -CloudDirectSites
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CloudDirectSite&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectSites operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 36 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CloudDirectSystems
              
             $query = New-RscQueryMisc -CloudDirectSystems
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CloudDirectSystems</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectSystems operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 37 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ConfiguredGroupMembers
              
             $query = New-RscQueryMisc -ConfiguredGroupMembers
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.wildcard = $someString
             # REQUIRED
             $query.Var.pdls = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.workloadHierarchy = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
             # OPTIONAL
             $query.Var.groupFilterAttributes = @(
                 @{
                     # OPTIONAL
                     filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values.
                     # OPTIONAL
                     attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values.
                     # OPTIONAL
                     attributeKey = $someString
                     # OPTIONAL
                     attributeValue = $someString
                     # OPTIONAL
                     dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values.
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ConfiguredGroupMemberConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ConfiguredGroupMembers operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 38 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: Crawl
              
             $query = New-RscQueryMisc -Crawl
              
             # REQUIRED
             $query.Var.crawlId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Crawl</dev:code>
        <dev:remarks>
          <maml:para>Runs the Crawl operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 39 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: Crawls
              
             $query = New-RscQueryMisc -Crawls
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CrawlConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Crawls operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 40 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CrossAccountPairs
              
             $query = New-RscQueryMisc -CrossAccountPairs
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someGetCrossAccountPairsSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GetCrossAccountPairsSortByField]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someGetCrossAccountPairsFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GetCrossAccountPairsFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
             }
             )
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CrossAccountPairInfoConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CrossAccountPairs operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 41 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CurrentIpAddress
              
             $query = New-RscQueryMisc -CurrentIpAddress
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CurrentIpAddress operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 42 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CurrentOrg
              
             $query = New-RscQueryMisc -CurrentOrg
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Org</dev:code>
        <dev:remarks>
          <maml:para>Runs the CurrentOrg operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 43 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CurrentOrgAuthDomainConfig
              
             $query = New-RscQueryMisc -CurrentOrgAuthDomainConfig
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: TenantAuthDomainConfig</dev:code>
        <dev:remarks>
          <maml:para>Runs the CurrentOrgAuthDomainConfig operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 44 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CurrentOrgIdentityProviders
              
             $query = New-RscQueryMisc -CurrentOrgIdentityProviders
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;IdentityProvider&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CurrentOrgIdentityProviders operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 45 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: CustomAnalyzer
              
             $query = New-RscQueryMisc -CustomAnalyzer
              
             # REQUIRED
             $query.Var.analyzerId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Analyzer</dev:code>
        <dev:remarks>
          <maml:para>Runs the CustomAnalyzer operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 46 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DashboardSummary
              
             $query = New-RscQueryMisc -DashboardSummary
              
             # REQUIRED
             $query.Var.getWhitelistedResults = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetDashboardSummaryReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DashboardSummary operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 47 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DatagovSecDesc
              
             $query = New-RscQueryMisc -DatagovSecDesc
              
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.stdPath = $someString
             # OPTIONAL
             $query.Var.skipResolveSids = $someBoolean
             # OPTIONAL
             $query.Var.filters = @{
                 # OPTIONAL
                 resultsForSid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: QuerySddlReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatagovSecDesc operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 48 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DecryptExportUrl
              
             $query = New-RscQueryMisc -DecryptExportUrl
              
             # REQUIRED
             $query.Var.workloadFid = $someString
             # REQUIRED
             $query.Var.exportUrlSpecsEnc = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ExportUrlSpecs</dev:code>
        <dev:remarks>
          <maml:para>Runs the DecryptExportUrl operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 49 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeploymentIpAddresses
              
             $query = New-RscQueryMisc -DeploymentIpAddresses
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeploymentIpAddresses operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 50 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DeploymentVersion
              
             $query = New-RscQueryMisc -DeploymentVersion
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeploymentVersion operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 51 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DhrcActiveRecommendations
              
             $query = New-RscQueryMisc -DhrcActiveRecommendations
              
             # OPTIONAL
             $query.Var.categories = @(
                 $someDhrcCategory # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DhrcCategory]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;DhrcActiveRecommendation&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DhrcActiveRecommendations operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 52 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DhrcLatestMetrics
              
             $query = New-RscQueryMisc -DhrcLatestMetrics
              
             # OPTIONAL
             $query.Var.categories = @(
                 $someDhrcCategory # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DhrcCategory]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;DhrcCollectedMetric&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DhrcLatestMetrics operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 53 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DhrcScores
              
             $query = New-RscQueryMisc -DhrcScores
              
             # OPTIONAL
             $query.Var.categories = @(
                 $someDhrcCategory # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DhrcCategory]) for enum values.
             )
             # OPTIONAL
             $query.Var.beginTime = $someDateTime
             # OPTIONAL
             $query.Var.timespan = $someDhrcScoreTimespan # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DhrcScoreTimespan]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;DhrcScore&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DhrcScores operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 54 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DiffFmd
              
             $query = New-RscQueryMisc -DiffFmd
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.managedId = $someString
             # REQUIRED
             $query.Var.snapshotId = $someString
             # REQUIRED
             $query.Var.browseDiffPath = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DiffResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the DiffFmd operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 55 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DiscoverNodes
              
             $query = New-RscQueryMisc -DiscoverNodes
              
             # REQUIRED
             $query.Var.id = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BootstrappableNodeInfoListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the DiscoverNodes operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 56 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DiscoveryTimeline
              
             $query = New-RscQueryMisc -DiscoveryTimeline
              
             # REQUIRED
             $query.Var.startDay = $someString
             # REQUIRED
             $query.Var.endDay = $someString
             # REQUIRED
             $query.Var.timezone = $someString
             # REQUIRED
             $query.Var.getWhitelistedResults = $someBoolean
             # REQUIRED
             $query.Var.workloadTypes = @(
                 $someDataGovObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovObjectType]) for enum values.
             )
             # OPTIONAL
             $query.Var.useOptimisedDiscoveryTimeline = $someBoolean
             # OPTIONAL
             $query.Var.subscriptionIdsFilter = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetPoliciesTimelineReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DiscoveryTimeline operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 57 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DistributionListDigest
              
             $query = New-RscQueryMisc -DistributionListDigest
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 digestId = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: EventDigest</dev:code>
        <dev:remarks>
          <maml:para>Runs the DistributionListDigest operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 58 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DistributionListDigests
              
             $query = New-RscQueryMisc -DistributionListDigests
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;EventDigest&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the DistributionListDigests operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 59 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: DummyFieldWithAdminOnlyTag
              
             $query = New-RscQueryMisc -DummyFieldWithAdminOnlyTag
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the DummyFieldWithAdminOnlyTag operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 60 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: EdgeWindowsToolLink
              
             $query = New-RscQueryMisc -EdgeWindowsToolLink
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: EdgeWindowsToolLink</dev:code>
        <dev:remarks>
          <maml:para>Runs the EdgeWindowsToolLink operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 61 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: EffectiveRbacPermissions
              
             $query = New-RscQueryMisc -EffectiveRbacPermissions
              
             # REQUIRED
             $query.Var.roleId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;RbacPermission&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the EffectiveRbacPermissions operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 62 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: EventDigests
              
             $query = New-RscQueryMisc -EventDigests
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 recipientUserIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;EventDigest&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the EventDigests operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 63 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: ExternalDeploymentName
              
             $query = New-RscQueryMisc -ExternalDeploymentName
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExternalDeploymentName operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 64 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: FailedRestoreItemsInfo
              
             $query = New-RscQueryMisc -FailedRestoreItemsInfo
              
             # REQUIRED
             $query.Var.workloadFid = $someString
             # REQUIRED
             $query.Var.failedItemsInstanceId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FailedRestoreItemsInfoReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the FailedRestoreItemsInfo operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 65 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: FederatedLoginStatus
              
             $query = New-RscQueryMisc -FederatedLoginStatus
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FederatedLoginStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the FederatedLoginStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 66 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: FileActivities
              
             $query = New-RscQueryMisc -FileActivities
              
             # REQUIRED
             $query.Var.ListFileActivitiesInput = @{
                 # REQUIRED
                 snappableFid = $someString
                 # REQUIRED
                 stdPath = $someString
                 # REQUIRED
                 startDateTime = $someString
                 # REQUIRED
                 timezone = $someString
             }
             # REQUIRED
             $query.Var.FileActivitiesSort = @{
                 # OPTIONAL
                 sortBy = $someFileActivitiesSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileActivitiesSortBy]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UserActivityResultConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the FileActivities operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 67 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GeoLocationList
              
             $query = New-RscQueryMisc -GeoLocationList
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GroupCount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the GeoLocationList operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 68 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetAllRolesInOrgList
              
             $query = New-RscQueryMisc -GetAllRolesInOrgList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someRoleFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RoleFieldEnum]) for enum values.
             # OPTIONAL
             $query.Var.nameFilter = $someString
             # OPTIONAL
             $query.Var.assignedRoleIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RoleConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetAllRolesInOrgList operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 69 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetCdmReleaseDetailsForVersionFromSupportPortal
              
             $query = New-RscQueryMisc -GetCdmReleaseDetailsForVersionFromSupportPortal
              
             # REQUIRED
             $query.Var.listClusterUuid = @(
                 $someString
             )
             # REQUIRED
             $query.Var.filterVersion = $someString
             # REQUIRED
             $query.Var.fetchLinks = $someBoolean
             # REQUIRED
             $query.Var.filterUpgradeable = $someBoolean
             # REQUIRED
             $query.Var.shouldShowAll = $someBoolean
             # REQUIRED
             $query.Var.filterAfterSource = $someBoolean
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmUpgradeReleaseDetailsFromSupportPortalReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetCdmReleaseDetailsForVersionFromSupportPortal operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 70 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetCdmReleaseDetailsFromSupportPortal
              
             $query = New-RscQueryMisc -GetCdmReleaseDetailsFromSupportPortal
              
             # REQUIRED
             $query.Var.platform = $someString
             # REQUIRED
             $query.Var.nodeCount = $someInt64
             # REQUIRED
             $query.Var.sourceVersion = $someString
             # REQUIRED
             $query.Var.filterVersion = $someString
             # REQUIRED
             $query.Var.fetchLinks = $someBoolean
             # REQUIRED
             $query.Var.filterUpgradeable = $someBoolean
             # REQUIRED
             $query.Var.shouldShowAll = $someBoolean
             # REQUIRED
             $query.Var.filterAfterSource = $someBoolean
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmUpgradeReleaseDetailsFromSupportPortalReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetCdmReleaseDetailsFromSupportPortal operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 71 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetGroupCountByPrechecksStatus
              
             $query = New-RscQueryMisc -GetGroupCountByPrechecksStatus
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GroupCount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetGroupCountByPrechecksStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 72 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetGroupCountByUpgradeJobStatus
              
             $query = New-RscQueryMisc -GetGroupCountByUpgradeJobStatus
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GroupCount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetGroupCountByUpgradeJobStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 73 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetGroupCountByVersionStatus
              
             $query = New-RscQueryMisc -GetGroupCountByVersionStatus
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;GroupCount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetGroupCountByVersionStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 74 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetKorgTaskchainStatus
              
             $query = New-RscQueryMisc -GetKorgTaskchainStatus
              
             # REQUIRED
             $query.Var.taskchainId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetTaskchainStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetKorgTaskchainStatus operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 75 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetPermissions
              
             $query = New-RscQueryMisc -GetPermissions
              
             # REQUIRED
             $query.Var.roleId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;Permission&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetPermissions operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 76 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetRolesByIds
              
             $query = New-RscQueryMisc -GetRolesByIds
              
             # REQUIRED
             $query.Var.roleIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;Role&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetRolesByIds operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 77 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GetUserDownloads
              
             $query = New-RscQueryMisc -GetUserDownloads
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;UserDownload&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the GetUserDownloads operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 78 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GlobalFileSearch
              
             $query = New-RscQueryMisc -GlobalFileSearch
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 query = @{
                     # REQUIRED
                     regex = $someString
                     # REQUIRED
                     snappableIds = @(
                         $someString
                     )
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GlobalFileSearchReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalFileSearch operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 79 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GlobalLockoutConfig
              
             $query = New-RscQueryMisc -GlobalLockoutConfig
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LockoutConfig</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalLockoutConfig operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 80 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GlobalMfaSetting
              
             $query = New-RscQueryMisc -GlobalMfaSetting
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetMfaSettingReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalMfaSetting operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 81 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GlobalSearchResults
              
             $query = New-RscQueryMisc -GlobalSearchResults
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HierarchyObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalSearchResults operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 82 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GroupsInCurrentAndDescendantOrganization
              
             $query = New-RscQueryMisc -GroupsInCurrentAndDescendantOrganization
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 orgIdsFilter = @(
                     $someString
                 )
                 # OPTIONAL
                 roleIdsFilter = @(
                     $someString
                 )
                 # OPTIONAL
                 nameFilter = $someString
             }
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someGroupSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
             # OPTIONAL
             $query.Var.shouldIncludeGroupsWithoutRole = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GroupsInCurrentAndDescendantOrganization operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 83 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GuestCredentials
              
             $query = New-RscQueryMisc -GuestCredentials
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GuestCredentialDetailListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the GuestCredentials operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 84 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: GuestCredentialsV2
              
             $query = New-RscQueryMisc -GuestCredentialsV2
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someGuestOsCredentialFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GuestOsCredentialFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someGuestOsCredentialSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GuestOsCredentialSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GuestOsCredentialConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GuestCredentialsV2 operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 85 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: HasIdpConfigured
              
             $query = New-RscQueryMisc -HasIdpConfigured
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the HasIdpConfigured operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 86 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: HelpContentSnippets
              
             $query = New-RscQueryMisc -HelpContentSnippets
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.filter = @{
                 # OPTIONAL
                 initiator = $someHelpContentSnippetsFilterInitiator # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HelpContentSnippetsFilterInitiator]) for enum values.
                 # OPTIONAL
                 query = $someString
                 # OPTIONAL
                 language = $someString
                 # OPTIONAL
                 source = $someHelpContentSource # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HelpContentSource]) for enum values.
                 # OPTIONAL
                 categories = @(
                     $someString
                 )
                 # REQUIRED
                 productDocumentationTypes = @(
                     $someProductDocumentationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProductDocumentationType]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HelpContentSnippetConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the HelpContentSnippets operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 87 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: HierarchyObject
              
             $query = New-RscQueryMisc -HierarchyObject
              
             # REQUIRED
             $query.Var.fid = $someString
             # OPTIONAL
             $query.Var.workloadHierarchy = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HierarchyObject</dev:code>
        <dev:remarks>
          <maml:para>Runs the HierarchyObject operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 88 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: HierarchyObjects
              
             $query = New-RscQueryMisc -HierarchyObjects
              
             # REQUIRED
             $query.Var.fids = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;HierarchyObject&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the HierarchyObjects operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 89 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: InstalledVersionList
              
             $query = New-RscQueryMisc -InstalledVersionList
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;InstalledVersionGroupCount&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the InstalledVersionList operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 90 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: InventoryRoot
              
             $query = New-RscQueryMisc -InventoryRoot
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: InventoryRoot</dev:code>
        <dev:remarks>
          <maml:para>Runs the InventoryRoot operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 91 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: InventorySubHierarchyRoot
              
             $query = New-RscQueryMisc -InventorySubHierarchyRoot
              
             # REQUIRED
             $query.Var.rootEnum = $someInventorySubHierarchyRootEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventorySubHierarchyRootEnum]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: InventorySubHierarchyRoot</dev:code>
        <dev:remarks>
          <maml:para>Runs the InventorySubHierarchyRoot operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 92 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: InventoryWorkloads
              
             $query = New-RscQueryMisc -InventoryWorkloads
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;InventoryCard&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the InventoryWorkloads operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 93 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: InvestigationCsvDownloadLink
              
             $query = New-RscQueryMisc -InvestigationCsvDownloadLink
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.workloadId = $someString
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: InvestigationCsvDownloadLinkReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the InvestigationCsvDownloadLink operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 94 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IpWhitelist
              
             $query = New-RscQueryMisc -IpWhitelist
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetWhitelistReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IpWhitelist operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 95 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IsIpmiEnabled
              
             $query = New-RscQueryMisc -IsIpmiEnabled
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsIpmiEnabled operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 96 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IsLoggedIntoRubrikSupportPortal
              
             $query = New-RscQueryMisc -IsLoggedIntoRubrikSupportPortal
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SupportPortalStatusReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsLoggedIntoRubrikSupportPortal operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 97 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IsReplaceNodeTprConfigured
              
             $query = New-RscQueryMisc -IsReplaceNodeTprConfigured
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsReplaceNodeTprConfigured operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 98 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IsSfdcReachable
              
             $query = New-RscQueryMisc -IsSfdcReachable
              
             # REQUIRED
             $query.Var.hostname = $someString
             # REQUIRED
             $query.Var.organizationId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsSfdcReachable operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 99 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IsUpgradeAvailable
              
             $query = New-RscQueryMisc -IsUpgradeAvailable
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmUpgradeAvailabilityReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsUpgradeAvailable operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 100 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IsUpgradeRecommended
              
             $query = New-RscQueryMisc -IsUpgradeRecommended
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmUpgradeRecommendationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsUpgradeRecommended operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 101 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IsZrsAvailableForLocation
              
             $query = New-RscQueryMisc -IsZrsAvailableForLocation
              
             # REQUIRED
             $query.Var.serviceTier = $someServiceTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ServiceTier]) for enum values.
             # REQUIRED
             $query.Var.region = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values.
             # REQUIRED
             $query.Var.subscriptionId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ZrsAvailabilityReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsZrsAvailableForLocation operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 102 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: Issue
              
             $query = New-RscQueryMisc -Issue
              
             # REQUIRED
             $query.Var.issueId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: Issue</dev:code>
        <dev:remarks>
          <maml:para>Runs the Issue operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 103 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: Issues
              
             $query = New-RscQueryMisc -Issues
              
             # REQUIRED
             $query.Var.status = $someIssueStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IssueStatus]) for enum values.
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: IssueConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Issues operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 104 -------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Misc
             # API Operation: IssuesJobIds
              
             $query = New-RscQueryMisc -IssuesJobIds
              
             # REQUIRED
             $query.Var.queryIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;System.String&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the IssuesJobIds operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 105 -------------------------</maml:title>
        <dev:code></dev:code>
        <dev:remarks>
          <maml:para></maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryMongo</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryMongo</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'Mongo' API domain: BulkRecoverableRanges, Collection, Collections, Database, Databases, RecoverableRanges, Source, or Sources.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryMongo creates a new query object for operations in the 'Mongo' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Mongo' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkRecoverableRanges, Collection, Collections, Database, Databases, RecoverableRanges, Source, or Sources. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMongo -BulkRecoverableRanges).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMongo -BulkRecoverableRanges).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryMongo</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkRecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Collection</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Collections</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Database</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Databases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Source</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sources</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: BulkRecoverableRanges
              
             $query = New-RscQueryMongo -BulkRecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 source = $someString
                 # OPTIONAL
                 databases = @(
                     $someString
                 )
                 # OPTIONAL
                 collections = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoRecoverableRanges</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkRecoverableRanges operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: Collection
              
             $query = New-RscQueryMongo -Collection
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoCollection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Collection operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: Collections
              
             $query = New-RscQueryMongo -Collections
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoCollectionConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Collections operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: Database
              
             $query = New-RscQueryMongo -Database
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoDatabase</dev:code>
        <dev:remarks>
          <maml:para>Runs the Database operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: Databases
              
             $query = New-RscQueryMongo -Databases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoDatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Databases operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: RecoverableRanges
              
             $query = New-RscQueryMongo -RecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 source = $someString
                 # OPTIONAL
                 databases = @(
                     $someString
                 )
                 # OPTIONAL
                 collections = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoRecoverableRanges</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRanges operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: Source
              
             $query = New-RscQueryMongo -Source
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoSource</dev:code>
        <dev:remarks>
          <maml:para>Runs the Source operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mongo
             # API Operation: Sources
              
             $query = New-RscQueryMongo -Sources
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongoSourceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Sources operation of the 'Mongo' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryMongoDb</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryMongoDb</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'Mongo DB' API domain: BulkRecoverableRange, Collection, CollectionRecoverableRange, Collections, Database, Databases, Source, or Sources.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryMongoDb creates a new query object for operations in the 'Mongo DB' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Mongo DB' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkRecoverableRange, Collection, CollectionRecoverableRange, Collections, Database, Databases, Source, or Sources. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMongoDb -BulkRecoverableRange).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMongoDb -BulkRecoverableRange).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryMongoDb</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkRecoverableRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Collection</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CollectionRecoverableRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Collections</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Database</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Databases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Source</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sources</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: BulkRecoverableRange
              
             $query = New-RscQueryMongoDb -BulkRecoverableRange
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 recoveryRangeData = @{
                     # OPTIONAL
                     sourceType = $someMosaicBulkRecoverableRangeRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicBulkRecoverableRangeRequestSourceType]) for enum values.
                     # REQUIRED
                     managementObjects = @{
                         # OPTIONAL
                         databases = @(
                             @{
                                 # OPTIONAL
                                 dbName = $someString
                                 # OPTIONAL
                                 tables = @(
                                     $someString
                                 )
                             }
                         )
                     }
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicRecoveryRangeResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkRecoverableRange operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: Collection
              
             $query = New-RscQueryMongoDb -Collection
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongodbCollection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Collection operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: CollectionRecoverableRange
              
             $query = New-RscQueryMongoDb -CollectionRecoverableRange
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 recoveryRangeRequestData = @{
                     # OPTIONAL
                     sourceType = $someMosaicRecoverableRangeRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicRecoverableRangeRequestSourceType]) for enum values.
                     # REQUIRED
                     databaseName = $someString
                     # REQUIRED
                     sourceName = $someString
                     # REQUIRED
                     tableName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetMosaicRecoverableRangeResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CollectionRecoverableRange operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: Collections
              
             $query = New-RscQueryMongoDb -Collections
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongodbCollectionConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Collections operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: Database
              
             $query = New-RscQueryMongoDb -Database
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongodbDatabase</dev:code>
        <dev:remarks>
          <maml:para>Runs the Database operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: Databases
              
             $query = New-RscQueryMongoDb -Databases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongodbDatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Databases operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: Source
              
             $query = New-RscQueryMongoDb -Source
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongodbSource</dev:code>
        <dev:remarks>
          <maml:para>Runs the Source operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: MongoDb
             # API Operation: Sources
              
             $query = New-RscQueryMongoDb -Sources
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MongodbSourceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Sources operation of the 'Mongo DB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryMosaic</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryMosaic</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Mosaic' API domain: BulkRecoveryRange, Snapshots, Stores, or Versions.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryMosaic creates a new query object for operations in the 'Mosaic' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Mosaic' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkRecoveryRange, Snapshots, Stores, or Versions. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMosaic -BulkRecoveryRange).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMosaic -BulkRecoveryRange).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryMosaic</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BulkRecoveryRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Stores</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Versions</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mosaic
             # API Operation: BulkRecoveryRange
              
             $query = New-RscQueryMosaic -BulkRecoveryRange
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 recoveryRangeData = @{
                     # OPTIONAL
                     sourceType = $someMosaicBulkRecoverableRangeRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicBulkRecoverableRangeRequestSourceType]) for enum values.
                     # REQUIRED
                     managementObjects = @{
                         # OPTIONAL
                         databases = @(
                             @{
                                 # OPTIONAL
                                 dbName = $someString
                                 # OPTIONAL
                                 tables = @(
                                     $someString
                                 )
                             }
                         )
                     }
                     # REQUIRED
                     sourceName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MosaicRecoveryRangeResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkRecoveryRange operation of the 'Mosaic' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mosaic
             # API Operation: Snapshots
              
             $query = New-RscQueryMosaic -Snapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 versionData = @{
                     # OPTIONAL
                     maxEntries = $someInt
                     # OPTIONAL
                     since = $someInt
                     # OPTIONAL
                     upto = $someInt
                     # OPTIONAL
                     sourceType = $someVersionSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VersionSourceType]) for enum values.
                     # REQUIRED
                     databaseName = $someString
                     # REQUIRED
                     sourceName = $someString
                     # REQUIRED
                     tableName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListVersionResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Snapshots operation of the 'Mosaic' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mosaic
             # API Operation: Stores
              
             $query = New-RscQueryMosaic -Stores
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListStoreResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Stores operation of the 'Mosaic' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mosaic
             # API Operation: Versions
              
             $query = New-RscQueryMosaic -Versions
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 versionData = @{
                     # OPTIONAL
                     maxEntries = $someInt
                     # OPTIONAL
                     since = $someInt
                     # OPTIONAL
                     upto = $someInt
                     # OPTIONAL
                     sourceType = $someVersionSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VersionSourceType]) for enum values.
                     # REQUIRED
                     databaseName = $someString
                     # REQUIRED
                     sourceName = $someString
                     # REQUIRED
                     tableName = $someString
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListVersionResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Versions operation of the 'Mosaic' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryMssql</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryMssql</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 20 operations in the 'Microsoft SQL Server' API domain: AvailabilityGroup, AvailabilityGroupDatabaseVirtualGroups, AvailabilityGroupVirtualGroups, CdmLogShippingTarget, CdmLogShippingTargets, CompatibleInstances, Database, DatabaseLiveMounts, DatabaseMissedRecoverableRanges, DatabaseMissedSnapshots, DatabaseRestoreEstimate, DatabaseRestoreFiles, Databases, DefaultProperties, DefaultPropertiesOnCluster, Instance, JobStatus, LogShippingTargets, RecoverableRanges, or TopLevelDescendants.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryMssql creates a new query object for operations in the 'Microsoft SQL Server' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 20 operations in the 'Microsoft SQL Server' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AvailabilityGroup, AvailabilityGroupDatabaseVirtualGroups, AvailabilityGroupVirtualGroups, CdmLogShippingTarget, CdmLogShippingTargets, CompatibleInstances, Database, DatabaseLiveMounts, DatabaseMissedRecoverableRanges, DatabaseMissedSnapshots, DatabaseRestoreEstimate, DatabaseRestoreFiles, Databases, DefaultProperties, DefaultPropertiesOnCluster, Instance, JobStatus, LogShippingTargets, RecoverableRanges, or TopLevelDescendants. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMssql -AvailabilityGroup).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryMssql -AvailabilityGroup).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryMssql</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AvailabilityGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AvailabilityGroupDatabaseVirtualGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AvailabilityGroupVirtualGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CdmLogShippingTarget</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CdmLogShippingTargets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CompatibleInstances</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Database</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseLiveMounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseMissedRecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseMissedSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseRestoreEstimate</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseRestoreFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Databases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DefaultProperties</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DefaultPropertiesOnCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Instance</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">JobStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LogShippingTargets</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopLevelDescendants</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: AvailabilityGroup
              
             $query = New-RscQueryMssql -AvailabilityGroup
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlAvailabilityGroup</dev:code>
        <dev:remarks>
          <maml:para>Runs the AvailabilityGroup operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: AvailabilityGroupDatabaseVirtualGroups
              
             $query = New-RscQueryMssql -AvailabilityGroupDatabaseVirtualGroups
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.fids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlDatabaseVirtualGroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AvailabilityGroupDatabaseVirtualGroups operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: AvailabilityGroupVirtualGroups
              
             $query = New-RscQueryMssql -AvailabilityGroupVirtualGroups
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someMssqlAvailabilityGroupVirtualGroupFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlAvailabilityGroupVirtualGroupFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someMssqlAvailabilityGroupVirtualGroupSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlAvailabilityGroupVirtualGroupSortByField]) for enum values.
             }
             # OPTIONAL
             $query.Var.sortOrder = @{
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlAvailabilityGroupVirtualGroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the AvailabilityGroupVirtualGroups operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: CdmLogShippingTarget
              
             $query = New-RscQueryMssql -CdmLogShippingTarget
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlLogShippingTarget</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmLogShippingTarget operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: CdmLogShippingTargets
              
             $query = New-RscQueryMssql -CdmLogShippingTargets
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someMssqlLogShippingTargetSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingTargetSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someMssqlLogShippingTargetFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingTargetFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlLogShippingTargetConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmLogShippingTargets operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: CompatibleInstances
              
             $query = New-RscQueryMssql -CompatibleInstances
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 recoveryTime = $someDateTime
                 # REQUIRED
                 recoveryType = $someV1GetCompatibleMssqlInstancesV1RequestRecoveryType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1GetCompatibleMssqlInstancesV1RequestRecoveryType]) for enum values.
                 # REQUIRED
                 id = $someString
             }
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someMssqlCompatibleInstancesSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlCompatibleInstancesSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someMssqlCompatibleInstancesFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlCompatibleInstancesFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlInstanceSummaryListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the CompatibleInstances operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: Database
              
             $query = New-RscQueryMssql -Database
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlDatabase</dev:code>
        <dev:remarks>
          <maml:para>Runs the Database operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DatabaseLiveMounts
              
             $query = New-RscQueryMssql -DatabaseLiveMounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someMssqlDatabaseLiveMountSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlDatabaseLiveMountSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someMssqlDatabaseLiveMountFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlDatabaseLiveMountFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlDatabaseLiveMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseLiveMounts operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DatabaseMissedRecoverableRanges
              
             $query = New-RscQueryMssql -DatabaseMissedRecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlMissedRecoverableRangeListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseMissedRecoverableRanges operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DatabaseMissedSnapshots
              
             $query = New-RscQueryMssql -DatabaseMissedSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MissedSnapshotListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseMissedSnapshots operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DatabaseRestoreEstimate
              
             $query = New-RscQueryMssql -DatabaseRestoreEstimate
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 lsn = $someString
                 # OPTIONAL
                 recoveryForkGuid = $someString
                 # OPTIONAL
                 time = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlRestoreEstimateResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseRestoreEstimate operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DatabaseRestoreFiles
              
             $query = New-RscQueryMssql -DatabaseRestoreFiles
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 lsn = $someString
                 # OPTIONAL
                 recoveryForkGuid = $someString
                 # OPTIONAL
                 time = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: V1MssqlGetRestoreFilesV1Response</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseRestoreFiles operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: Databases
              
             $query = New-RscQueryMssql -Databases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlDatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Databases operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DefaultProperties
              
             $query = New-RscQueryMssql -DefaultProperties
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: UpdateMssqlDefaultPropertiesReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DefaultProperties operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: DefaultPropertiesOnCluster
              
             $query = New-RscQueryMssql -DefaultPropertiesOnCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # OPTIONAL
                 mssqlObjectId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlDefaultPropertiesOnClusterReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DefaultPropertiesOnCluster operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: Instance
              
             $query = New-RscQueryMssql -Instance
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlInstance</dev:code>
        <dev:remarks>
          <maml:para>Runs the Instance operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: JobStatus
              
             $query = New-RscQueryMssql -JobStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the JobStatus operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: LogShippingTargets
              
             $query = New-RscQueryMssql -LogShippingTargets
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 limit = $someInt
                 # OPTIONAL
                 location = $someString
                 # OPTIONAL
                 offset = $someInt
                 # OPTIONAL
                 primaryDatabaseId = $someString
                 # OPTIONAL
                 primaryDatabaseName = $someString
                 # OPTIONAL
                 secondaryDatabaseName = $someString
                 # OPTIONAL
                 sortBy = $someV2QueryLogShippingConfigurationsV2RequestSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2QueryLogShippingConfigurationsV2RequestSortBy]) for enum values.
                 # OPTIONAL
                 sortOrder = $someV2QueryLogShippingConfigurationsV2RequestSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2QueryLogShippingConfigurationsV2RequestSortOrder]) for enum values.
                 # OPTIONAL
                 status = $someV2QueryLogShippingConfigurationsV2RequestStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2QueryLogShippingConfigurationsV2RequestStatus]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlLogShippingSummaryV2ListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the LogShippingTargets operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: RecoverableRanges
              
             $query = New-RscQueryMssql -RecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlRecoverableRangeListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRanges operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Mssql
             # API Operation: TopLevelDescendants
              
             $query = New-RscQueryMssql -TopLevelDescendants
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MssqlTopLevelDescendantTypeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopLevelDescendants operation of the 'Microsoft SQL Server' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryNas</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryNas</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'NAS' API domain: Fileset, Namespace, Namespaces, Share, System, Systems, TopLevelDescendants, or Volume.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryNas creates a new query object for operations in the 'NAS' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'NAS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Fileset, Namespace, Namespaces, Share, System, Systems, TopLevelDescendants, or Volume. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryNas -Fileset).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryNas -Fileset).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryNas</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Fileset</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Namespace</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Namespaces</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Share</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">System</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Systems</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopLevelDescendants</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Volume</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: Fileset
              
             $query = New-RscQueryNas -Fileset
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NasFileset</dev:code>
        <dev:remarks>
          <maml:para>Runs the Fileset operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: Namespace
              
             $query = New-RscQueryNas -Namespace
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NasNamespace</dev:code>
        <dev:remarks>
          <maml:para>Runs the Namespace operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: Namespaces
              
             $query = New-RscQueryNas -Namespaces
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NasNamespaceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Namespaces operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: Share
              
             $query = New-RscQueryNas -Share
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NasShare</dev:code>
        <dev:remarks>
          <maml:para>Runs the Share operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: System
              
             $query = New-RscQueryNas -System
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NasSystem</dev:code>
        <dev:remarks>
          <maml:para>Runs the System operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: Systems
              
             $query = New-RscQueryNas -Systems
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NasSystemConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Systems operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: TopLevelDescendants
              
             $query = New-RscQueryNas -TopLevelDescendants
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmHierarchyObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopLevelDescendants operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nas
             # API Operation: Volume
              
             $query = New-RscQueryNas -Volume
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NasVolume</dev:code>
        <dev:remarks>
          <maml:para>Runs the Volume operation of the 'NAS' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryNcd</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryNcd</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 7 operations in the 'NAS Cloud Direct' API domain: BackEndCapacity, FrontEndCapacity, ObjectProtectionStatus, ObjectsOverTimeData, TaskData, UsageOverTimeData, or VmImageUrl.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryNcd creates a new query object for operations in the 'NAS Cloud Direct' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 7 operations in the 'NAS Cloud Direct' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BackEndCapacity, FrontEndCapacity, ObjectProtectionStatus, ObjectsOverTimeData, TaskData, UsageOverTimeData, or VmImageUrl. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryNcd -BackEndCapacity).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryNcd -BackEndCapacity).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryNcd</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BackEndCapacity</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FrontEndCapacity</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ObjectProtectionStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ObjectsOverTimeData</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TaskData</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UsageOverTimeData</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VmImageUrl</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ncd
             # API Operation: BackEndCapacity
              
             $query = New-RscQueryNcd -BackEndCapacity
              
             # REQUIRED
             $query.Var.clusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NcdBackEndCapacity</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackEndCapacity operation of the 'NAS Cloud Direct' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ncd
             # API Operation: FrontEndCapacity
              
             $query = New-RscQueryNcd -FrontEndCapacity
              
             # REQUIRED
             $query.Var.clusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NcdFrontEndCapacity</dev:code>
        <dev:remarks>
          <maml:para>Runs the FrontEndCapacity operation of the 'NAS Cloud Direct' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ncd
             # API Operation: ObjectProtectionStatus
              
             $query = New-RscQueryNcd -ObjectProtectionStatus
              
             # REQUIRED
             $query.Var.clusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NcdObjectProtectionStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ObjectProtectionStatus operation of the 'NAS Cloud Direct' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ncd
             # API Operation: ObjectsOverTimeData
              
             $query = New-RscQueryNcd -ObjectsOverTimeData
              
             # REQUIRED
             $query.Var.clusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;NcdObjectsOverTimeData&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ObjectsOverTimeData operation of the 'NAS Cloud Direct' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ncd
             # API Operation: TaskData
              
             $query = New-RscQueryNcd -TaskData
              
             # REQUIRED
             $query.Var.clusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;NcdTaskData&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the TaskData operation of the 'NAS Cloud Direct' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ncd
             # API Operation: UsageOverTimeData
              
             $query = New-RscQueryNcd -UsageOverTimeData
              
             # REQUIRED
             $query.Var.clusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;NcdUsageOverTimeData&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the UsageOverTimeData operation of the 'NAS Cloud Direct' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ncd
             # API Operation: VmImageUrl
              
             $query = New-RscQueryNcd -VmImageUrl
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 hypervisorType = $someNcdHypervisorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NcdHypervisorType]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NcdVmImageUrl</dev:code>
        <dev:remarks>
          <maml:para>Runs the VmImageUrl operation of the 'NAS Cloud Direct' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryNutanix</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryNutanix</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 20 operations in the 'Nutanix' API domain: BrowseSnapshot, Category, CategoryValue, Cluster, ClusterAsyncRequestStatus, ClusterContainers, ClusterNetworks, Clusters, Mounts, PrismCentral, PrismCentrals, SearchVm, SnapshotDetail, SnapshotVdisks, TopLevelDescendants, VDiskMountableVms, Vm, VmAsyncRequestStatus, VmMissedSnapshots, or Vms.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryNutanix creates a new query object for operations in the 'Nutanix' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 20 operations in the 'Nutanix' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BrowseSnapshot, Category, CategoryValue, Cluster, ClusterAsyncRequestStatus, ClusterContainers, ClusterNetworks, Clusters, Mounts, PrismCentral, PrismCentrals, SearchVm, SnapshotDetail, SnapshotVdisks, TopLevelDescendants, VDiskMountableVms, Vm, VmAsyncRequestStatus, VmMissedSnapshots, or Vms. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryNutanix -BrowseSnapshot).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryNutanix -BrowseSnapshot).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryNutanix</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BrowseSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Category</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CategoryValue</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Cluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterAsyncRequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterContainers</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterNetworks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Clusters</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PrismCentral</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PrismCentrals</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SearchVm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotDetail</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotVdisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopLevelDescendants</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VDiskMountableVms</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vm</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VmAsyncRequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VmMissedSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vms</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: BrowseSnapshot
              
             $query = New-RscQueryNutanix -BrowseSnapshot
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 limit = $someInt
                 # OPTIONAL
                 offset = $someInt
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 path = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BrowseResponseListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseSnapshot operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: Category
              
             $query = New-RscQueryNutanix -Category
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixCategory</dev:code>
        <dev:remarks>
          <maml:para>Runs the Category operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: CategoryValue
              
             $query = New-RscQueryNutanix -CategoryValue
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixCategoryValue</dev:code>
        <dev:remarks>
          <maml:para>Runs the CategoryValue operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: Cluster
              
             $query = New-RscQueryNutanix -Cluster
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixCluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the Cluster operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: ClusterAsyncRequestStatus
              
             $query = New-RscQueryNutanix -ClusterAsyncRequestStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterAsyncRequestStatus operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: ClusterContainers
              
             $query = New-RscQueryNutanix -ClusterContainers
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixContainerListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterContainers operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: ClusterNetworks
              
             $query = New-RscQueryNutanix -ClusterNetworks
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixNetworkListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterNetworks operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: Clusters
              
             $query = New-RscQueryNutanix -Clusters
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Clusters operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: Mounts
              
             $query = New-RscQueryNutanix -Mounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someNutanixLiveMountFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixLiveMountFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someNutanixLiveMountSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixLiveMountSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixLiveMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Mounts operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: PrismCentral
              
             $query = New-RscQueryNutanix -PrismCentral
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixPrismCentral</dev:code>
        <dev:remarks>
          <maml:para>Runs the PrismCentral operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: PrismCentrals
              
             $query = New-RscQueryNutanix -PrismCentrals
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixPrismCentralConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the PrismCentrals operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: SearchVm
              
             $query = New-RscQueryNutanix -SearchVm
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 cursor = $someString
                 # OPTIONAL
                 limit = $someInt
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 path = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SearchResponseListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the SearchVm operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: SnapshotDetail
              
             $query = New-RscQueryNutanix -SnapshotDetail
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixVmSnapshotDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotDetail operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: SnapshotVdisks
              
             $query = New-RscQueryNutanix -SnapshotVdisks
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixVmSnapshotVdiskDetailListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotVdisks operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: TopLevelDescendants
              
             $query = New-RscQueryNutanix -TopLevelDescendants
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmHierarchyObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopLevelDescendants operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: VDiskMountableVms
              
             $query = New-RscQueryNutanix -VDiskMountableVms
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixVmConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the VDiskMountableVms operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: Vm
              
             $query = New-RscQueryNutanix -Vm
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixVm</dev:code>
        <dev:remarks>
          <maml:para>Runs the Vm operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: VmAsyncRequestStatus
              
             $query = New-RscQueryNutanix -VmAsyncRequestStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the VmAsyncRequestStatus operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: VmMissedSnapshots
              
             $query = New-RscQueryNutanix -VmMissedSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MissedSnapshotListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the VmMissedSnapshots operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Nutanix
             # API Operation: Vms
              
             $query = New-RscQueryNutanix -Vms
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NutanixVmConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Vms operation of the 'Nutanix' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryO365</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryO365</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 39 operations in the 'Office 365' API domain: AdGroups, BrowseTeamConvChannels, Calendar, Consumption, Groups, License, ListApps, Mailbox, Mailboxes, ObjectAncestors, Onedrive, Onedrives, Org, OrgAtSnappableLevel, OrgStatuses, OrgSummaries, Orgs, ServiceAccount, ServiceStatus, SharepointDrive, SharepointDrives, SharepointList, SharepointLists, SharepointObjectList, SharepointObjects, SharepointObjectsNew, SharepointSite, SharepointSites, Site, Sites, StorageStats, SubscriptionsAppTypeCounts, Team, TeamChannels, TeamConversationsFolderID, TeamPostedBy, Teams, User, or UserObjects.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryO365 creates a new query object for operations in the 'Office 365' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 39 operations in the 'Office 365' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AdGroups, BrowseTeamConvChannels, Calendar, Consumption, Groups, License, ListApps, Mailbox, Mailboxes, ObjectAncestors, Onedrive, Onedrives, Org, OrgAtSnappableLevel, OrgStatuses, OrgSummaries, Orgs, ServiceAccount, ServiceStatus, SharepointDrive, SharepointDrives, SharepointList, SharepointLists, SharepointObjectList, SharepointObjects, SharepointObjectsNew, SharepointSite, SharepointSites, Site, Sites, StorageStats, SubscriptionsAppTypeCounts, Team, TeamChannels, TeamConversationsFolderID, TeamPostedBy, Teams, User, or UserObjects. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryO365 -AdGroups).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryO365 -AdGroups).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryO365</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AdGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BrowseTeamConvChannels</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Calendar</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Consumption</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Groups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">License</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ListApps</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mailbox</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mailboxes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ObjectAncestors</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Onedrive</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Onedrives</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Org</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OrgAtSnappableLevel</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OrgStatuses</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OrgSummaries</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Orgs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ServiceAccount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ServiceStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointDrive</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointDrives</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointLists</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointObjectList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointObjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointObjectsNew</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointSite</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SharepointSites</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Site</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sites</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">StorageStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SubscriptionsAppTypeCounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Team</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TeamChannels</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TeamConversationsFolderID</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TeamPostedBy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Teams</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">User</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UserObjects</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: AdGroups
              
             $query = New-RscQueryO365 -AdGroups
              
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.adGroupSearchFilter = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;AdGroup&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AdGroups operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: BrowseTeamConvChannels
              
             $query = New-RscQueryO365 -BrowseTeamConvChannels
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # OPTIONAL
             $query.Var.snapshotFidOpt = $someString
             # REQUIRED
             $query.Var.excludeArchived = $someBoolean
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.channelMembershipTypeFilter = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
             # OPTIONAL
             $query.Var.nameFilter = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365TeamConvChannelConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseTeamConvChannels operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Calendar
              
             $query = New-RscQueryO365 -Calendar
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Calendar</dev:code>
        <dev:remarks>
          <maml:para>Runs the Calendar operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Consumption
              
             $query = New-RscQueryO365 -Consumption
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 mspOrgId = $someString
                 # OPTIONAL
                 o365OrgId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Consumption</dev:code>
        <dev:remarks>
          <maml:para>Runs the Consumption operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Groups
              
             $query = New-RscQueryO365 -Groups
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
             # REQUIRED
             $query.Var.snappableType = $someSnappableType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365GroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Groups operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: License
              
             $query = New-RscQueryO365 -License
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365License</dev:code>
        <dev:remarks>
          <maml:para>Runs the License operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: ListApps
              
             $query = New-RscQueryO365 -ListApps
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.o365AppFilters = @(
                 @{
                     # OPTIONAL
                     field = $someAppFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AppFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.o365AppSortByParam = @{
                 # OPTIONAL
                 field = $someAppSortByParamField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AppSortByParamField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365AppConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ListApps operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Mailbox
              
             $query = New-RscQueryO365 -Mailbox
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Mailbox</dev:code>
        <dev:remarks>
          <maml:para>Runs the Mailbox operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Mailboxes
              
             $query = New-RscQueryO365 -Mailboxes
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365MailboxConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Mailboxes operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: ObjectAncestors
              
             $query = New-RscQueryO365 -ObjectAncestors
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetImplicitlyAuthorizedAncestorSummariesResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ObjectAncestors operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Onedrive
              
             $query = New-RscQueryO365 -Onedrive
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Onedrive</dev:code>
        <dev:remarks>
          <maml:para>Runs the Onedrive operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Onedrives
              
             $query = New-RscQueryO365 -Onedrives
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Onedrives operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Org
              
             $query = New-RscQueryO365 -Org
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Org</dev:code>
        <dev:remarks>
          <maml:para>Runs the Org operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: OrgAtSnappableLevel
              
             $query = New-RscQueryO365 -OrgAtSnappableLevel
              
             # REQUIRED
             $query.Var.fid = $someString
             # REQUIRED
             $query.Var.snappableType = $someSnappableType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Org</dev:code>
        <dev:remarks>
          <maml:para>Runs the OrgAtSnappableLevel operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: OrgStatuses
              
             $query = New-RscQueryO365 -OrgStatuses
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;O365OrgInfo&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the OrgStatuses operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: OrgSummaries
              
             $query = New-RscQueryO365 -OrgSummaries
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetImplicitlyAuthorizedObjectSummariesResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the OrgSummaries operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Orgs
              
             $query = New-RscQueryO365 -Orgs
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.workloadHierarchy = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OrgConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Orgs operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: ServiceAccount
              
             $query = New-RscQueryO365 -ServiceAccount
              
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ServiceAccountStatusResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the ServiceAccount operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: ServiceStatus
              
             $query = New-RscQueryO365 -ServiceStatus
              
             # OPTIONAL
             $query.Var.orgID = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetO365ServiceStatusResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the ServiceStatus operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointDrive
              
             $query = New-RscQueryO365 -SharepointDrive
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SharepointDrive</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointDrive operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointDrives
              
             $query = New-RscQueryO365 -SharepointDrives
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SharepointDriveConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointDrives operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointList
              
             $query = New-RscQueryO365 -SharepointList
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SharepointList</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointList operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointLists
              
             $query = New-RscQueryO365 -SharepointLists
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SharepointListConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointLists operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointObjectList
              
             $query = New-RscQueryO365 -SharepointObjectList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.objectTypeFilter = @(
                 $someString
             )
             # REQUIRED
             $query.Var.includeEntireHierarchy = $someBoolean
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SharepointObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointObjectList operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 25 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointObjects
              
             $query = New-RscQueryO365 -SharepointObjects
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SharepointObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointObjects operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 26 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointObjectsNew
              
             $query = New-RscQueryO365 -SharepointObjectsNew
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.objectTypeFilter = @(
                 $someString
             )
             # REQUIRED
             $query.Var.includeEntireHierarchy = $someBoolean
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SharepointObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointObjectsNew operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 27 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointSite
              
             $query = New-RscQueryO365 -SharepointSite
              
             # REQUIRED
             $query.Var.siteFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Site</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointSite operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 28 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SharepointSites
              
             $query = New-RscQueryO365 -SharepointSites
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SiteConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SharepointSites operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 29 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Site
              
             $query = New-RscQueryO365 -Site
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Site</dev:code>
        <dev:remarks>
          <maml:para>Runs the Site operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 30 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Sites
              
             $query = New-RscQueryO365 -Sites
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
             # OPTIONAL
             $query.Var.excludeChildSites = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365SiteConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Sites operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 31 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: StorageStats
              
             $query = New-RscQueryO365 -StorageStats
              
             # OPTIONAL
             $query.Var.orgID = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetO365StorageStatsResp</dev:code>
        <dev:remarks>
          <maml:para>Runs the StorageStats operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 32 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: SubscriptionsAppTypeCounts
              
             $query = New-RscQueryO365 -SubscriptionsAppTypeCounts
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;O365SubscriptionAppTypeCounts&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SubscriptionsAppTypeCounts operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 33 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Team
              
             $query = New-RscQueryO365 -Team
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365Teams</dev:code>
        <dev:remarks>
          <maml:para>Runs the Team operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 34 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: TeamChannels
              
             $query = New-RscQueryO365 -TeamChannels
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.excludeArchived = $someBoolean
             # REQUIRED
             $query.Var.channelMembershipTypeFilter = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
             # OPTIONAL
             $query.Var.nameFilter = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365TeamsChannelConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TeamChannels operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 35 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: TeamConversationsFolderID
              
             $query = New-RscQueryO365 -TeamConversationsFolderID
              
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.o365OrgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the TeamConversationsFolderID operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 36 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: TeamPostedBy
              
             $query = New-RscQueryO365 -TeamPostedBy
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.o365OrgId = $someString
             # OPTIONAL
             $query.Var.nameFilter = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365TeamConversationsSenderConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TeamPostedBy operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 37 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: Teams
              
             $query = New-RscQueryO365 -Teams
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.o365OrgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365TeamsConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Teams operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 38 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: User
              
             $query = New-RscQueryO365 -User
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365User</dev:code>
        <dev:remarks>
          <maml:para>Runs the User operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 39 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: O365
             # API Operation: UserObjects
              
             $query = New-RscQueryO365 -UserObjects
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365UserDescendantMetadataConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the UserObjects operation of the 'Office 365' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryOracle</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryOracle</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 17 operations in the 'Oracle' API domain: AcoExampleDownloadLink, AcoParameters, DataGuardGroup, Database, DatabaseAsyncRequestDetails, DatabaseLogBackupConfig, Databases, Host, HostLogBackupConfig, LiveMounts, MissedRecoverableRanges, MissedSnapshots, PdbDetails, Rac, RacLogBackupConfig, RecoverableRanges, or TopLevelDescendants.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryOracle creates a new query object for operations in the 'Oracle' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 17 operations in the 'Oracle' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AcoExampleDownloadLink, AcoParameters, DataGuardGroup, Database, DatabaseAsyncRequestDetails, DatabaseLogBackupConfig, Databases, Host, HostLogBackupConfig, LiveMounts, MissedRecoverableRanges, MissedSnapshots, PdbDetails, Rac, RacLogBackupConfig, RecoverableRanges, or TopLevelDescendants. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryOracle -AcoExampleDownloadLink).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryOracle -AcoExampleDownloadLink).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryOracle</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AcoExampleDownloadLink</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AcoParameters</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DataGuardGroup</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Database</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseAsyncRequestDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseLogBackupConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Databases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Host</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HostLogBackupConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LiveMounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MissedRecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MissedSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PdbDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Rac</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RacLogBackupConfig</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopLevelDescendants</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: AcoExampleDownloadLink
              
             $query = New-RscQueryOracle -AcoExampleDownloadLink
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 dbId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleFileDownloadLink</dev:code>
        <dev:remarks>
          <maml:para>Runs the AcoExampleDownloadLink operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: AcoParameters
              
             $query = New-RscQueryOracle -AcoParameters
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 dbId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleAcoParameterList</dev:code>
        <dev:remarks>
          <maml:para>Runs the AcoParameters operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DataGuardGroup
              
             $query = New-RscQueryOracle -DataGuardGroup
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleDataGuardGroup</dev:code>
        <dev:remarks>
          <maml:para>Runs the DataGuardGroup operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: Database
              
             $query = New-RscQueryOracle -Database
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleDatabase</dev:code>
        <dev:remarks>
          <maml:para>Runs the Database operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DatabaseAsyncRequestDetails
              
             $query = New-RscQueryOracle -DatabaseAsyncRequestDetails
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseAsyncRequestDetails operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: DatabaseLogBackupConfig
              
             $query = New-RscQueryOracle -DatabaseLogBackupConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleLogBackupConfig</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseLogBackupConfig operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: Databases
              
             $query = New-RscQueryOracle -Databases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleDatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Databases operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: Host
              
             $query = New-RscQueryOracle -Host
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleHost</dev:code>
        <dev:remarks>
          <maml:para>Runs the Host operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: HostLogBackupConfig
              
             $query = New-RscQueryOracle -HostLogBackupConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleLogBackupConfig</dev:code>
        <dev:remarks>
          <maml:para>Runs the HostLogBackupConfig operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: LiveMounts
              
             $query = New-RscQueryOracle -LiveMounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someOracleLiveMountFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OracleLiveMountFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someOracleLiveMountSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OracleLiveMountSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleLiveMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the LiveMounts operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: MissedRecoverableRanges
              
             $query = New-RscQueryOracle -MissedRecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleMissedRecoverableRangeListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the MissedRecoverableRanges operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: MissedSnapshots
              
             $query = New-RscQueryOracle -MissedSnapshots
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: MissedSnapshotListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the MissedSnapshots operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: PdbDetails
              
             $query = New-RscQueryOracle -PdbDetails
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
                 # REQUIRED
                 pdbDetailsRequest = @{
                     # REQUIRED
                     recoveryPoint = @{
                         # OPTIONAL
                         snapshotId = $someString
                         # OPTIONAL
                         timestampMs = $someInt64
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OraclePdbDetails</dev:code>
        <dev:remarks>
          <maml:para>Runs the PdbDetails operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: Rac
              
             $query = New-RscQueryOracle -Rac
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleRac</dev:code>
        <dev:remarks>
          <maml:para>Runs the Rac operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: RacLogBackupConfig
              
             $query = New-RscQueryOracle -RacLogBackupConfig
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleLogBackupConfig</dev:code>
        <dev:remarks>
          <maml:para>Runs the RacLogBackupConfig operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: RecoverableRanges
              
             $query = New-RscQueryOracle -RecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # OPTIONAL
                 shouldIncludeDbSnapshotSummaries = $someBoolean
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleRecoverableRangeListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRanges operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Oracle
             # API Operation: TopLevelDescendants
              
             $query = New-RscQueryOracle -TopLevelDescendants
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OracleTopLevelDescendantTypeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopLevelDescendants operation of the 'Oracle' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryPolicy</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryPolicy</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'Policy' API domain: OrgSecurityPolicy, PasswordComplexityPolicy, Policies, Policy, PolicyObjectUsages, or TopRiskPolicySummaries.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryPolicy creates a new query object for operations in the 'Policy' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Policy' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: OrgSecurityPolicy, PasswordComplexityPolicy, Policies, Policy, PolicyObjectUsages, or TopRiskPolicySummaries. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryPolicy -OrgSecurityPolicy).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryPolicy -OrgSecurityPolicy).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryPolicy</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">OrgSecurityPolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PasswordComplexityPolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Policies</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Policy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PolicyObjectUsages</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopRiskPolicySummaries</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: OrgSecurityPolicy
              
             $query = New-RscQueryPolicy -OrgSecurityPolicy
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OrgSecurityPolicy</dev:code>
        <dev:remarks>
          <maml:para>Runs the OrgSecurityPolicy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: PasswordComplexityPolicy
              
             $query = New-RscQueryPolicy -PasswordComplexityPolicy
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PasswordComplexityPolicy</dev:code>
        <dev:remarks>
          <maml:para>Runs the PasswordComplexityPolicy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: Policies
              
             $query = New-RscQueryPolicy -Policies
              
             # OPTIONAL
             $query.Var.policyObjectFilter = $somePolicyObjectFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PolicyObjectFilter]) for enum values.
             # OPTIONAL
             $query.Var.excludeHierarchyObjectList = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClassificationPolicyDetailConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Policies operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: Policy
              
             $query = New-RscQueryPolicy -Policy
              
             # REQUIRED
             $query.Var.policyId = $someString
             # OPTIONAL
             $query.Var.workloadTypes = @(
                 $someDataGovObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovObjectType]) for enum values.
             )
             # OPTIONAL
             $query.Var.sortBy = $somePolicyDetailsSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PolicyDetailsSortBy]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.clusterIdsFilter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.replicationFilter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.searchObjectName = $someString
             # OPTIONAL
             $query.Var.hierarchyAncestorIdFilter = $someString
             # OPTIONAL
             $query.Var.policyAssignmentType = $somePolicyAssignmentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PolicyAssignmentType]) for enum values.
             # OPTIONAL
             $query.Var.includeDataTypeHits = $someBoolean
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClassificationPolicyDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the Policy operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: PolicyObjectUsages
              
             $query = New-RscQueryPolicy -PolicyObjectUsages
              
             # REQUIRED
             $query.Var.objectIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PolicyObjectUsageConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the PolicyObjectUsages operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Policy
             # API Operation: TopRiskPolicySummaries
              
             $query = New-RscQueryPolicy -TopRiskPolicySummaries
              
             # REQUIRED
             $query.Var.getWhitelistedResults = $someBoolean
             # REQUIRED
             $query.Var.limit = $someInt
             # REQUIRED
             $query.Var.workloadTypes = @(
                 $someDataGovObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovObjectType]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;PolicySummary&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopRiskPolicySummaries operation of the 'Policy' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryRansomware</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryRansomware</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 9 operations in the 'Ransomware' API domain: DetectionWorkloadLocations, InvestigationAnalysisSummary, InvestigationEnablement, OverallInvestigationSummary, ProcessedInvestigationWorkloadCount, Result, ResultOpt, Results, or ResultsGrouped.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryRansomware creates a new query object for operations in the 'Ransomware' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 9 operations in the 'Ransomware' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: DetectionWorkloadLocations, InvestigationAnalysisSummary, InvestigationEnablement, OverallInvestigationSummary, ProcessedInvestigationWorkloadCount, Result, ResultOpt, Results, or ResultsGrouped. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryRansomware -DetectionWorkloadLocations).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryRansomware -DetectionWorkloadLocations).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryRansomware</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">DetectionWorkloadLocations</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InvestigationAnalysisSummary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">InvestigationEnablement</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OverallInvestigationSummary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ProcessedInvestigationWorkloadCount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Result</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResultOpt</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Results</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResultsGrouped</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: DetectionWorkloadLocations
              
             $query = New-RscQueryRansomware -DetectionWorkloadLocations
              
             # REQUIRED
             $query.Var.beginTime = $someDateTime
             # OPTIONAL
             $query.Var.endTime = $someDateTime
             # REQUIRED
             $query.Var.returnOnlyForAnomalousEntities = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ListLocationsReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DetectionWorkloadLocations operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: InvestigationAnalysisSummary
              
             $query = New-RscQueryRansomware -InvestigationAnalysisSummary
              
             # REQUIRED
             $query.Var.startDay = $someString
             # REQUIRED
             $query.Var.endDay = $someString
             # REQUIRED
             $query.Var.timezone = $someString
             # OPTIONAL
             $query.Var.objectTypeFilter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.clusterUuidFilter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.slaFidFilter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.hideSuspiciousDataIfNonAnomalous = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RansomwareInvestigationAnalysisSummaryReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the InvestigationAnalysisSummary operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: InvestigationEnablement
              
             $query = New-RscQueryRansomware -InvestigationEnablement
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RansomwareInvestigationEnablementReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the InvestigationEnablement operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: OverallInvestigationSummary
              
             $query = New-RscQueryRansomware -OverallInvestigationSummary
              
             # REQUIRED
             $query.Var.historyNumHours = $someInt
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: OverallRansomwareInvestigationSummary</dev:code>
        <dev:remarks>
          <maml:para>Runs the OverallInvestigationSummary operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: ProcessedInvestigationWorkloadCount
              
             $query = New-RscQueryRansomware -ProcessedInvestigationWorkloadCount
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ProcessedRansomwareInvestigationWorkloadCountReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ProcessedInvestigationWorkloadCount operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: Result
              
             $query = New-RscQueryRansomware -Result
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.managedId = $someString
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RansomwareResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the Result operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: ResultOpt
              
             $query = New-RscQueryRansomware -ResultOpt
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.managedId = $someString
             # REQUIRED
             $query.Var.snapshotId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RansomwareResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResultOpt operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: Results
              
             $query = New-RscQueryRansomware -Results
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someRansomwareResultSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RansomwareResultSortBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 managedId = @(
                     $someString
                 )
                 # OPTIONAL
                 startTime = $someDateTime
                 # OPTIONAL
                 endTime = $someDateTime
                 # OPTIONAL
                 isEncrypted = $someBoolean
             }
             # OPTIONAL
             $query.Var.timezoneOffset = $someSingle
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RansomwareResultConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Results operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Ransomware
             # API Operation: ResultsGrouped
              
             $query = New-RscQueryRansomware -ResultsGrouped
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.groupBy = $someRansomwareResultGroupBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RansomwareResultGroupBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 managedId = @(
                     $someString
                 )
                 # OPTIONAL
                 startTime = $someDateTime
                 # OPTIONAL
                 endTime = $someDateTime
                 # OPTIONAL
                 isEncrypted = $someBoolean
             }
             # OPTIONAL
             $query.Var.timezoneOffset = $someSingle
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RansomwareResultGroupedDataConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResultsGrouped operation of the 'Ransomware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryRcv</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryRcv</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'RCV' API domain: AccountEntitlement, AccountEntitlements, IsTriggerGrsTprConfigured, or PrivateEndpointConnections.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryRcv creates a new query object for operations in the 'RCV' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'RCV' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AccountEntitlement, AccountEntitlements, IsTriggerGrsTprConfigured, or PrivateEndpointConnections. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryRcv -AccountEntitlement).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryRcv -AccountEntitlement).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryRcv</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AccountEntitlement</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AccountEntitlements</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsTriggerGrsTprConfigured</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PrivateEndpointConnections</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: AccountEntitlement
              
             $query = New-RscQueryRcv -AccountEntitlement
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RcvAccountEntitlement</dev:code>
        <dev:remarks>
          <maml:para>Runs the AccountEntitlement operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: AccountEntitlements
              
             $query = New-RscQueryRcv -AccountEntitlements
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AllRcvAccountEntitlements</dev:code>
        <dev:remarks>
          <maml:para>Runs the AccountEntitlements operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: IsTriggerGrsTprConfigured
              
             $query = New-RscQueryRcv -IsTriggerGrsTprConfigured
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsTriggerGrsTprConfigured operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Rcv
             # API Operation: PrivateEndpointConnections
              
             $query = New-RscQueryRcv -PrivateEndpointConnections
              
             # REQUIRED
             $query.Var.input = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;DetailedPrivateEndpointConnection&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the PrivateEndpointConnections operation of the 'RCV' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryReplication</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryReplication</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 7 operations in the 'Replication' API domain: IncomingStats, NetworkThrottleBypass, NetworkThrottleBypassById, OutgoingStats, Pairs, ValidSources, or ValidTargets.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryReplication creates a new query object for operations in the 'Replication' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 7 operations in the 'Replication' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: IncomingStats, NetworkThrottleBypass, NetworkThrottleBypassById, OutgoingStats, Pairs, ValidSources, or ValidTargets. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryReplication -IncomingStats).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryReplication -IncomingStats).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryReplication</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">IncomingStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NetworkThrottleBypass</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NetworkThrottleBypassById</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OutgoingStats</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Pairs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidSources</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ValidTargets</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: IncomingStats
              
             $query = New-RscQueryReplication -IncomingStats
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 range = $someString
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: InternalReplicationBandwidthIncomingResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the IncomingStats operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: NetworkThrottleBypass
              
             $query = New-RscQueryReplication -NetworkThrottleBypass
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ReplicationTargetThrottleBypassSummaryListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the NetworkThrottleBypass operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: NetworkThrottleBypassById
              
             $query = New-RscQueryReplication -NetworkThrottleBypassById
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ReplicationNetworkThrottleBypassReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the NetworkThrottleBypassById operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: OutgoingStats
              
             $query = New-RscQueryReplication -OutgoingStats
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 range = $someString
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: InternalReplicationBandwidthOutgoingResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the OutgoingStats operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: Pairs
              
             $query = New-RscQueryReplication -Pairs
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someReplicationPairsQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationPairsQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 clusterName = $someString
                 # OPTIONAL
                 sourceClusterUuids = @(
                     $someString
                 )
                 # OPTIONAL
                 targetClusterUuids = @(
                     $someString
                 )
                 # OPTIONAL
                 status = @(
                     $someReplicationPairConnectionStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationPairConnectionStatus]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ReplicationPairConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Pairs operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: ValidSources
              
             $query = New-RscQueryReplication -ValidSources
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someListValidReplicationSourcesSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ListValidReplicationSourcesSortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.isCrossAccount = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidReplicationSourceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidSources operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Replication
             # API Operation: ValidTargets
              
             $query = New-RscQueryReplication -ValidTargets
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someListValidReplicationTargetsSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ListValidReplicationTargetsSortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.isCrossAccount = $someBoolean
             # OPTIONAL
             $query.Var.validReplicationTargetFilter = @{
                 # OPTIONAL
                 clusterUuidList = @(
                     $someString
                 )
                 # OPTIONAL
                 replicationTargetTypeList = @(
                     $someReplicationTargetsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationTargetsType]) for enum values.
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ValidReplicationTargetConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ValidTargets operation of the 'Replication' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryReport</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryReport</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'Report' API domain: ClusterMigrationCount, ClusterMigrationJobStatus, ClusterMigrationStatus, Data, DatabaseLogForCluster, DatabaseLogingPropertiesForCluster, ScheduledReport, ScheduledReports, Sonar, SonarContent, or SonarRow.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryReport creates a new query object for operations in the 'Report' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'Report' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ClusterMigrationCount, ClusterMigrationJobStatus, ClusterMigrationStatus, Data, DatabaseLogForCluster, DatabaseLogingPropertiesForCluster, ScheduledReport, ScheduledReports, Sonar, SonarContent, or SonarRow. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryReport -ClusterMigrationCount).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryReport -ClusterMigrationCount).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryReport</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ClusterMigrationCount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterMigrationJobStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterMigrationStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Data</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseLogForCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatabaseLogingPropertiesForCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ScheduledReport</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ScheduledReports</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Sonar</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SonarContent</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SonarRow</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: ClusterMigrationCount
              
             $query = New-RscQueryReport -ClusterMigrationCount
              
             # OPTIONAL
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.status = @(
                 $someCdmReportMigrationStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmReportMigrationStatus]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ReportsMigrationCount</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterMigrationCount operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: ClusterMigrationJobStatus
              
             $query = New-RscQueryReport -ClusterMigrationJobStatus
              
             # OPTIONAL
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterReportMigrationJobStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterMigrationJobStatus operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: ClusterMigrationStatus
              
             $query = New-RscQueryReport -ClusterMigrationStatus
              
             # OPTIONAL
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.status = @(
                 $someCdmReportMigrationStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmReportMigrationStatus]) for enum values.
             )
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ReportMigrationStatusConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterMigrationStatus operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: Data
              
             $query = New-RscQueryReport -Data
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.dataView = $someDataViewTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataViewTypeEnum]) for enum values.
             # REQUIRED
             $query.Var.columns = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # REQUIRED
                     name = $someString
                     # REQUIRED
                     values = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.groupBy = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.secondaryGroupBy = $someString
             # OPTIONAL
             $query.Var.aggregations = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.sortBy = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.timezone = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RowConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Data operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: DatabaseLogForCluster
              
             $query = New-RscQueryReport -DatabaseLogForCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 logBackupDelay = $someInt
                 # OPTIONAL
                 limit = $someInt
                 # OPTIONAL
                 offset = $someInt
                 # OPTIONAL
                 effectiveSlaDomainId = $someString
                 # OPTIONAL
                 databaseType = $someString
                 # OPTIONAL
                 location = $someString
                 # OPTIONAL
                 sortBy = $someV1QueryLogReportRequestSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1QueryLogReportRequestSortBy]) for enum values.
                 # OPTIONAL
                 sortOrder = $someV1QueryLogReportRequestSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1QueryLogReportRequestSortOrder]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DbLogReportSummaryListReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseLogForCluster operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: DatabaseLogingPropertiesForCluster
              
             $query = New-RscQueryReport -DatabaseLogingPropertiesForCluster
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DbLogReportProperties</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatabaseLogingPropertiesForCluster operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: ScheduledReport
              
             $query = New-RscQueryReport -ScheduledReport
              
             # REQUIRED
             $query.Var.id = $someInt
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ScheduledReport</dev:code>
        <dev:remarks>
          <maml:para>Runs the ScheduledReport operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: ScheduledReports
              
             $query = New-RscQueryReport -ScheduledReports
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 reportId = $someInt
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ScheduledReportConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ScheduledReports operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: Sonar
              
             $query = New-RscQueryReport -Sonar
              
             # REQUIRED
             $query.Var.sonarReportGroupBy = $someDiscoveryReportGroupBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiscoveryReportGroupBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.timeFilter = @{
                 # OPTIONAL
                 endTime = $someString
                 # OPTIONAL
                 startTime = $someString
                 # OPTIONAL
                 timeDuration = $someTimeDuration # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeDuration]) for enum values.
                 # OPTIONAL
                 timezone = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SonarReportConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Sonar operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: SonarContent
              
             $query = New-RscQueryReport -SonarContent
              
             # REQUIRED
             $query.Var.groupBy = $someDiscoveryContentReportGroupBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiscoveryContentReportGroupBy]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someDiscoveryContentReportSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiscoveryContentReportSortBy]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filters = @{
                 # OPTIONAL
                 search = $someString
                 # OPTIONAL
                 policyIds = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterIds = @(
                     $someString
                 )
                 # OPTIONAL
                 applyWhitelists = $someBoolean
                 # OPTIONAL
                 subscriptionIds = @(
                     $someString
                 )
                 # REQUIRED
                 objectTypes = @(
                     $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
                 )
             }
             # REQUIRED
             $query.Var.day = $someString
             # REQUIRED
             $query.Var.timezone = $someString
             # REQUIRED
             $query.Var.workloadTypes = @(
                 $someDataGovObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovObjectType]) for enum values.
             )
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SonarContentReportConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SonarContent operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Report
             # API Operation: SonarRow
              
             $query = New-RscQueryReport -SonarRow
              
             # OPTIONAL
             $query.Var.sortBy = $someDiscoveryReportSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiscoveryReportSortBy]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.endTime = $someString
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SonarReportRowConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SonarRow operation of the 'Report' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySapHana</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySapHana</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'SAP HANA' API domain: Database, Databases, LogSnapshot, LogSnapshots, RecoverableRange, RecoverableRanges, System, or Systems.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySapHana creates a new query object for operations in the 'SAP HANA' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'SAP HANA' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Database, Databases, LogSnapshot, LogSnapshots, RecoverableRange, RecoverableRanges, System, or Systems. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySapHana -Database).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySapHana -Database).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySapHana</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Database</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Databases</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LogSnapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LogSnapshots</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">System</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Systems</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: Database
              
             $query = New-RscQuerySapHana -Database
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaDatabase</dev:code>
        <dev:remarks>
          <maml:para>Runs the Database operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: Databases
              
             $query = New-RscQuerySapHana -Databases
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaDatabaseConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Databases operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: LogSnapshot
              
             $query = New-RscQuerySapHana -LogSnapshot
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaLogSnapshot</dev:code>
        <dev:remarks>
          <maml:para>Runs the LogSnapshot operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: LogSnapshots
              
             $query = New-RscQuerySapHana -LogSnapshots
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someSapHanaLogSnapshotSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaLogSnapshotSortBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 workloadId = @(
                     $someString
                 )
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 fromTime = $someDateTime
                 # OPTIONAL
                 toTime = $someDateTime
                 # OPTIONAL
                 isArchived = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaLogSnapshotConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the LogSnapshots operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: RecoverableRange
              
             $query = New-RscQuerySapHana -RecoverableRange
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaRecoverableRange</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRange operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: RecoverableRanges
              
             $query = New-RscQuerySapHana -RecoverableRanges
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someSapHanaRecoverableRangeSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaRecoverableRangeSortBy]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 databaseId = @(
                     $someString
                 )
                 # OPTIONAL
                 fromTime = $someDateTime
                 # OPTIONAL
                 toTime = $someDateTime
                 # OPTIONAL
                 isArchived = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaRecoverableRangeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRanges operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: System
              
             $query = New-RscQuerySapHana -System
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaSystem</dev:code>
        <dev:remarks>
          <maml:para>Runs the System operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: SapHana
             # API Operation: Systems
              
             $query = New-RscQuerySapHana -Systems
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SapHanaSystemConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Systems operation of the 'SAP HANA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryServiceAccount</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryServiceAccount</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 2 operations in the 'Service Account' API domain: IsOrgDisabled, or ServiceAccount.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryServiceAccount creates a new query object for operations in the 'Service Account' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 2 operations in the 'Service Account' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: IsOrgDisabled, or ServiceAccount. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryServiceAccount -IsOrgDisabled).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryServiceAccount -IsOrgDisabled).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryServiceAccount</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">IsOrgDisabled</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ServiceAccount</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ServiceAccount
             # API Operation: IsOrgDisabled
              
             $query = New-RscQueryServiceAccount -IsOrgDisabled
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsOrgDisabled operation of the 'Service Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: ServiceAccount
             # API Operation: ServiceAccount
              
             $query = New-RscQueryServiceAccount -ServiceAccount
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someServiceAccountSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ServiceAccountSortBy]) for enum values.
             # OPTIONAL
             $query.Var.searchText = $someString
             # OPTIONAL
             $query.Var.roleIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ServiceAccountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ServiceAccount operation of the 'Service Account' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySharepoint</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySharepoint</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 8 operations in the 'Sharepoint' API domain: BrowseDrive, BrowseList, SiteDescendants, SiteExclusions, SiteSearch, SnappableDriveSearch, SnappableListSearch, or SnapshotDriveSearch.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySharepoint creates a new query object for operations in the 'Sharepoint' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Sharepoint' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BrowseDrive, BrowseList, SiteDescendants, SiteExclusions, SiteSearch, SnappableDriveSearch, SnappableListSearch, or SnapshotDriveSearch. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySharepoint -BrowseDrive).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySharepoint -BrowseDrive).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySharepoint</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BrowseDrive</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BrowseList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SiteDescendants</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SiteExclusions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SiteSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnappableDriveSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnappableListSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnapshotDriveSearch</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: BrowseDrive
              
             $query = New-RscQuerySharepoint -BrowseDrive
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.folderId = $someString
             # OPTIONAL
             $query.Var.sharepointDriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.siteChildId = $someString
             # OPTIONAL
             $query.Var.siteChildType = $someSharePointDescendantType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointDescendantType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseDrive operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: BrowseList
              
             $query = New-RscQuerySharepoint -BrowseList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.folderId = $someString
             # OPTIONAL
             $query.Var.sharepointDriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.siteChildId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseList operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: SiteDescendants
              
             $query = New-RscQuerySharepoint -SiteDescendants
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.siteFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.naturalId = $someString
             # OPTIONAL
             $query.Var.sharepointSiteSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someSharePointSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someSharePointSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
             # REQUIRED
             $query.Var.orgId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365FullSpObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SiteDescendants operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: SiteExclusions
              
             $query = New-RscQuerySharepoint -SiteExclusions
              
             # REQUIRED
             $query.Var.orgId = $someString
             # REQUIRED
             $query.Var.siteFids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;FullSpSiteExclusions&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SiteExclusions operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: SiteSearch
              
             $query = New-RscQuerySharepoint -SiteSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.siteFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.sharepointSiteSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someSharePointSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someSharePointSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365FullSpObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SiteSearch operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: SnappableDriveSearch
              
             $query = New-RscQuerySharepoint -SnappableDriveSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.sharepointDriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
             # OPTIONAL
             $query.Var.siteChildId = $someString
             # OPTIONAL
             $query.Var.siteChildType = $someSharePointDescendantType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointDescendantType]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnappableDriveSearch operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: SnappableListSearch
              
             $query = New-RscQuerySharepoint -SnappableListSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.sharepointDriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
             # OPTIONAL
             $query.Var.siteChildId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnappableListSearch operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sharepoint
             # API Operation: SnapshotDriveSearch
              
             $query = New-RscQuerySharepoint -SnapshotDriveSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.sharepointDriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnapshotDriveSearch operation of the 'Sharepoint' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySla</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySla</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 15 operations in the 'SLA' API domain: AuditDetail, ClusterDomains, ClusterGlobals, ConflictObjects, CountOfObjectsProtected, Domain, Domains, DownloadWithReplicationCsv, GlobalFilterList, GlobalStatuses, ManagedVolume, ManagedVolumes, NcdComplianceData, SummariesByIds, or VerifyWithReplicationToCluster.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySla creates a new query object for operations in the 'SLA' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 15 operations in the 'SLA' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AuditDetail, ClusterDomains, ClusterGlobals, ConflictObjects, CountOfObjectsProtected, Domain, Domains, DownloadWithReplicationCsv, GlobalFilterList, GlobalStatuses, ManagedVolume, ManagedVolumes, NcdComplianceData, SummariesByIds, or VerifyWithReplicationToCluster. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySla -AuditDetail).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySla -AuditDetail).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySla</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AuditDetail</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterDomains</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClusterGlobals</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ConflictObjects</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CountOfObjectsProtected</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Domain</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Domains</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DownloadWithReplicationCsv</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GlobalFilterList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GlobalStatuses</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedVolume</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ManagedVolumes</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NcdComplianceData</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SummariesByIds</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VerifyWithReplicationToCluster</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: AuditDetail
              
             $query = New-RscQuerySla -AuditDetail
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.SlaId = $someString
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someSLAAuditDetailFilterFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SLAAuditDetailFilterFieldEnum]) for enum values.
                     # OPTIONAL
                     text = $someString
             }
             )
             # OPTIONAL
             $query.Var.timezone = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;SlaAuditDetail&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the AuditDetail operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: ClusterDomains
              
             $query = New-RscQuerySla -ClusterDomains
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ClusterSlaDomainConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterDomains operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: ClusterGlobals
              
             $query = New-RscQuerySla -ClusterGlobals
              
             # REQUIRED
             $query.Var.cdmClusterUUID = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;SlaInfo&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClusterGlobals operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: ConflictObjects
              
             $query = New-RscQuerySla -ConflictObjects
              
             # REQUIRED
             $query.Var.fids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;HierarchyObject&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ConflictObjects operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: CountOfObjectsProtected
              
             $query = New-RscQuerySla -CountOfObjectsProtected
              
             # OPTIONAL
             $query.Var.rootOptionalFid = $someString
             # REQUIRED
             $query.Var.slaIds = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CountOfObjectsProtectedBySlAsResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the CountOfObjectsProtected operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: Domain
              
             $query = New-RscQuerySla -Domain
              
             # REQUIRED
             $query.Var.id = $someString
             # OPTIONAL
             $query.Var.shouldShowSyncStatus = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowUpgradeInfo = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowPausedClusters = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SlaDomain</dev:code>
        <dev:remarks>
          <maml:para>Runs the Domain operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: Domains
              
             $query = New-RscQuerySla -Domains
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someSlaQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someGlobalSlaQueryFilterInputField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalSlaQueryFilterInputField]) for enum values.
                     # OPTIONAL
                     text = $someString
                     # OPTIONAL
                     objectTypeList = @(
                         $someSlaObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaObjectType]) for enum values.
                     )
                     # OPTIONAL
                     textList = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.contextFilter = $someContextFilterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ContextFilterTypeEnum]) for enum values.
             # OPTIONAL
             $query.Var.contextFilterInput = @(
                 @{
                     # REQUIRED
                     field = $someString
                     # REQUIRED
                     text = $someString
             }
             )
             # OPTIONAL
             $query.Var.shouldShowSyncStatus = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowProtectedObjectCount = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowUpgradeInfo = $someBoolean
             # OPTIONAL
             $query.Var.showRemoteSlas = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowPausedClusters = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SlaDomainConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Domains operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: DownloadWithReplicationCsv
              
             $query = New-RscQuerySla -DownloadWithReplicationCsv
              
             # REQUIRED
             $query.Var.cdmClusterUUID = $someString
             # REQUIRED
             $query.Var.includeArchived = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: DownloadSlaWithReplicationCsvReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DownloadWithReplicationCsv operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: GlobalFilterList
              
             $query = New-RscQuerySla -GlobalFilterList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortBy = $someSlaQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someGlobalSlaQueryFilterInputField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalSlaQueryFilterInputField]) for enum values.
                     # OPTIONAL
                     text = $someString
                     # OPTIONAL
                     objectTypeList = @(
                         $someSlaObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaObjectType]) for enum values.
                     )
                     # OPTIONAL
                     textList = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.contextFilter = $someContextFilterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ContextFilterTypeEnum]) for enum values.
             # OPTIONAL
             $query.Var.contextFilterInput = @(
                 @{
                     # REQUIRED
                     field = $someString
                     # REQUIRED
                     text = $someString
             }
             )
             # OPTIONAL
             $query.Var.shouldShowSyncStatus = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowProtectedObjectCount = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowUpgradeInfo = $someBoolean
             # OPTIONAL
             $query.Var.showRemoteSlas = $someBoolean
             # OPTIONAL
             $query.Var.shouldShowPausedClusters = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GlobalSlaForFilterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalFilterList operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: GlobalStatuses
              
             $query = New-RscQuerySla -GlobalStatuses
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someSlaStatusFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaStatusFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
             }
             )
             # REQUIRED
             $query.Var.SlaId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GlobalSlaStatusConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GlobalStatuses operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: ManagedVolume
              
             $query = New-RscQuerySla -ManagedVolume
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ManagedVolume</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManagedVolume operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: ManagedVolumes
              
             $query = New-RscQuerySla -ManagedVolumes
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ManagedVolumeConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ManagedVolumes operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: NcdComplianceData
              
             $query = New-RscQuerySla -NcdComplianceData
              
             # REQUIRED
             $query.Var.clusters = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;NcdSlaComplianceData&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the NcdComplianceData operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: SummariesByIds
              
             $query = New-RscQuerySla -SummariesByIds
              
             # REQUIRED
             $query.Var.slaIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;SlaDomain&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the SummariesByIds operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sla
             # API Operation: VerifyWithReplicationToCluster
              
             $query = New-RscQuerySla -VerifyWithReplicationToCluster
              
             # REQUIRED
             $query.Var.cdmClusterUUID = $someString
             # REQUIRED
             $query.Var.includeArchived = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VerifySlaWithReplicationToClusterResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the VerifyWithReplicationToCluster operation of the 'SLA' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySmb</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySmb</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 2 operations in the 'SMB' API domain: Configuration, or Domains.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySmb creates a new query object for operations in the 'SMB' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 2 operations in the 'SMB' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: Configuration, or Domains. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySmb -Configuration).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySmb -Configuration).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySmb</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Configuration</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Domains</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Smb
             # API Operation: Configuration
              
             $query = New-RscQuerySmb -Configuration
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GetSmbConfigurationReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Configuration operation of the 'SMB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Smb
             # API Operation: Domains
              
             $query = New-RscQuerySmb -Domains
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filters = @(
                 @{
                     # OPTIONAL
                     field = $someSmbDomainFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SmbDomainFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someSmbDomainSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SmbDomainSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SmbDomainConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Domains operation of the 'SMB' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySnappable</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySnappable</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 13 operations in the 'Snappable' API domain: CdmHierarchySnappableNew, CdmHierarchySnappablesNew, ContactSearch, EmailSearch, EventSearch, GroupByList, Hierarchy, List, OnedriveSearch, Search, SearchVersionedFiles, TeamsConversationsSearch, or TeamsDriveSearch.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySnappable creates a new query object for operations in the 'Snappable' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 13 operations in the 'Snappable' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CdmHierarchySnappableNew, CdmHierarchySnappablesNew, ContactSearch, EmailSearch, EventSearch, GroupByList, Hierarchy, List, OnedriveSearch, Search, SearchVersionedFiles, TeamsConversationsSearch, or TeamsDriveSearch. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySnappable -CdmHierarchySnappableNew).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySnappable -CdmHierarchySnappableNew).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySnappable</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CdmHierarchySnappableNew</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CdmHierarchySnappablesNew</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ContactSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EmailSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EventSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">GroupByList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Hierarchy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">List</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OnedriveSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Search</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SearchVersionedFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TeamsConversationsSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TeamsDriveSearch</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: CdmHierarchySnappableNew
              
             $query = New-RscQuerySnappable -CdmHierarchySnappableNew
              
             # REQUIRED
             $query.Var.snappableFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmHierarchySnappableNew</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmHierarchySnappableNew operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: CdmHierarchySnappablesNew
              
             $query = New-RscQuerySnappable -CdmHierarchySnappablesNew
              
             # REQUIRED
             $query.Var.fids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;CdmHierarchySnappableNew&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmHierarchySnappablesNew operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: ContactSearch
              
             $query = New-RscQuerySnappable -ContactSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.contactsSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someO365ContactsSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365ContactsSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ContactSearch operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: EmailSearch
              
             $query = New-RscQuerySnappable -EmailSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.searchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 emailAddresses = @(
                     @{
                         # OPTIONAL
                         emailAddress = $someString
                         # OPTIONAL
                         emailAddressType = $someEmailAddressFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EmailAddressFilterType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 fromTime = $someDateTime
                 # OPTIONAL
                 untilTime = $someDateTime
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
                 # OPTIONAL
                 archiveFolderAction = $someArchiveFolderAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ArchiveFolderAction]) for enum values.
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the EmailSearch operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: EventSearch
              
             $query = New-RscQuerySnappable -EventSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.calendarSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someCalendarSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 emailAddresses = @(
                     @{
                         # OPTIONAL
                         emailAddress = $someString
                         # OPTIONAL
                         filterType = $someCalendarEmailAddressFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarEmailAddressFilterType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 timerange = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someO365CalendarSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365CalendarSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 recurrenceFilter = @{
                     # OPTIONAL
                     recurrenceType = $someCalendarRecurrenceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarRecurrenceType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the EventSearch operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: GroupByList
              
             $query = New-RscQuerySnappable -GroupByList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.groupBy = $someSnappableGroupByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableGroupByEnum]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 protectionStatus = @(
                     $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                 )
                 # OPTIONAL
                 slaDomain = @{
                     # OPTIONAL
                     id = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 complianceStatus = @(
                     $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                 )
                 # OPTIONAL
                 objectType = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 excludedObjectTypes = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 cluster = @{
                     # OPTIONAL
                     id = @(
                         $someString
                     )
                     # OPTIONAL
                     type = @(
                         $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                     )
                 }
                 # OPTIONAL
                 timeRange = @{
                     # REQUIRED
                     start = $someDateTime
                     # REQUIRED
                     end = $someDateTime
                 }
                 # OPTIONAL
                 slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                 # OPTIONAL
                 orgId = @(
                     $someString
                 )
                 # OPTIONAL
                 objectState = @(
                     $someObjectState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectState]) for enum values.
                 )
                 # OPTIONAL
                 isLocal = $someBoolean
                 # OPTIONAL
                 objectFid = @(
                     $someString
                 )
             }
             # OPTIONAL
             $query.Var.timezoneOffset = $someSingle
             # OPTIONAL
             $query.Var.requestedAggregations = @(
                 $someSnappableAggregationsEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableAggregationsEnum]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnappableGroupByConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the GroupByList operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: Hierarchy
              
             $query = New-RscQuerySnappable -Hierarchy
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HierarchySnappableConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Hierarchy operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: List
              
             $query = New-RscQuerySnappable -List
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someSnappableSortByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableSortByEnum]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 protectionStatus = @(
                     $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                 )
                 # OPTIONAL
                 slaDomain = @{
                     # OPTIONAL
                     id = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 complianceStatus = @(
                     $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                 )
                 # OPTIONAL
                 objectType = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 excludedObjectTypes = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 cluster = @{
                     # OPTIONAL
                     id = @(
                         $someString
                     )
                     # OPTIONAL
                     type = @(
                         $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                     )
                 }
                 # OPTIONAL
                 searchTerm = $someString
                 # OPTIONAL
                 slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                 # OPTIONAL
                 orgId = @(
                     $someString
                 )
                 # OPTIONAL
                 objectState = @(
                     $someObjectState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectState]) for enum values.
                 )
                 # OPTIONAL
                 isLocal = $someBoolean
                 # OPTIONAL
                 objectFid = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnappableConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the List operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: OnedriveSearch
              
             $query = New-RscQuerySnappable -OnedriveSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.onedriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the OnedriveSearch operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: Search
              
             $query = New-RscQuerySnappable -Search
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someSnappableSortByEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableSortByEnum]) for enum values.
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 protectionStatus = @(
                     $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values.
                 )
                 # OPTIONAL
                 slaDomain = @{
                     # OPTIONAL
                     id = @(
                         $someString
                     )
                 }
                 # OPTIONAL
                 complianceStatus = @(
                     $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values.
                 )
                 # OPTIONAL
                 objectType = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 excludedObjectTypes = @(
                     $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values.
                 )
                 # OPTIONAL
                 cluster = @{
                     # OPTIONAL
                     id = @(
                         $someString
                     )
                     # OPTIONAL
                     type = @(
                         $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values.
                     )
                 }
                 # OPTIONAL
                 timeRange = @{
                     # REQUIRED
                     start = $someDateTime
                     # REQUIRED
                     end = $someDateTime
                 }
                 # OPTIONAL
                 searchTerm = $someString
                 # OPTIONAL
                 slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values.
                 # OPTIONAL
                 orgId = @(
                     $someString
                 )
                 # OPTIONAL
                 objectState = @(
                     $someObjectState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectState]) for enum values.
                 )
                 # OPTIONAL
                 isLocal = $someBoolean
                 # OPTIONAL
                 objectFid = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnappableConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Search operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: SearchVersionedFiles
              
             $query = New-RscQuerySnappable -SearchVersionedFiles
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.searchQuery = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VersionedFileConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SearchVersionedFiles operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: TeamsConversationsSearch
              
             $query = New-RscQuerySnappable -TeamsConversationsSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.snapshotFidOpt = $someString
             # REQUIRED
             $query.Var.teamConvChannels = @(
                 @{
                     # REQUIRED
                     naturalId = $someString
                     # OPTIONAL
                     channelId = $someString
                     # REQUIRED
                     name = $someString
                     # REQUIRED
                     folderId = $someString
                     # REQUIRED
                     membershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
             }
             )
             # OPTIONAL
             $query.Var.teamsConversationsSearchFilter = @{
                 # OPTIONAL
                 postedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 channelNaturalId = $someString
                 # OPTIONAL
                 postedBy = $someString
                 # OPTIONAL
                 snapshotId = $someString
                 # OPTIONAL
                 parentId = $someString
                 # OPTIONAL
                 convId = $someString
                 # OPTIONAL
                 snapshotNum = $someInt
                 # OPTIONAL
                 includeArchived = $someBoolean
                 # OPTIONAL
                 fetchAllPostSenders = $someString
                 # OPTIONAL
                 skipPostsAttachments = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365TeamsConversationsConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TeamsConversationsSearch operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snappable
             # API Operation: TeamsDriveSearch
              
             $query = New-RscQuerySnappable -TeamsDriveSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.channelId = $someString
             # OPTIONAL
             $query.Var.channelFolderName = $someString
             # OPTIONAL
             $query.Var.teamsDriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TeamsDriveSearch operation of the 'Snappable' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySnapshot</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySnapshot</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 21 operations in the 'Snapshot' API domain: BrowseFileList, ClosestToPointInTime, EmailSearch, EventSearch, FilesDelta, FilesDeltaV2, Fileset, FilesetFiles, LegalHoldSnappable, OnedriveSearch, Polaris, Pvcs, QuarantinedDetails, Results, SnappableList, SnappablesList, SnappablesWithLegalHoldsSummary, Snapshot, UnmanagedObject, VappInstantRecoveryOptions, or VappTemplateExportOptions.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySnapshot creates a new query object for operations in the 'Snapshot' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 21 operations in the 'Snapshot' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BrowseFileList, ClosestToPointInTime, EmailSearch, EventSearch, FilesDelta, FilesDeltaV2, Fileset, FilesetFiles, LegalHoldSnappable, OnedriveSearch, Polaris, Pvcs, QuarantinedDetails, Results, SnappableList, SnappablesList, SnappablesWithLegalHoldsSummary, Snapshot, UnmanagedObject, VappInstantRecoveryOptions, or VappTemplateExportOptions. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySnapshot -BrowseFileList).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySnapshot -BrowseFileList).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySnapshot</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">BrowseFileList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ClosestToPointInTime</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EmailSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EventSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FilesDelta</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FilesDeltaV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Fileset</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FilesetFiles</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LegalHoldSnappable</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">OnedriveSearch</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Polaris</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Pvcs</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">QuarantinedDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Results</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnappableList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnappablesList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SnappablesWithLegalHoldsSummary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Snapshot</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">UnmanagedObject</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VappInstantRecoveryOptions</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VappTemplateExportOptions</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: BrowseFileList
              
             $query = New-RscQuerySnapshot -BrowseFileList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.path = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.searchPrefix = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnapshotFileConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BrowseFileList operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: ClosestToPointInTime
              
             $query = New-RscQuerySnapshot -ClosestToPointInTime
              
             # OPTIONAL
             $query.Var.beforeTime = $someDateTime
             # OPTIONAL
             $query.Var.afterTime = $someDateTime
             # REQUIRED
             $query.Var.snappableIds = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.includeLinked = $someBoolean
             # OPTIONAL
             $query.Var.ignoreActiveWorkloadCheck = $someBoolean
             # OPTIONAL
             $query.Var.excludeQuarantined = $someBoolean
             # OPTIONAL
             $query.Var.excludeAnomalous = $someBoolean
             # OPTIONAL
             $query.Var.getFullDetails = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;ClosestSnapshotSearchResult&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the ClosestToPointInTime operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: EmailSearch
              
             $query = New-RscQuerySnapshot -EmailSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.searchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 emailAddresses = @(
                     @{
                         # OPTIONAL
                         emailAddress = $someString
                         # OPTIONAL
                         emailAddressType = $someEmailAddressFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EmailAddressFilterType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 fromTime = $someDateTime
                 # OPTIONAL
                 untilTime = $someDateTime
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
                 # OPTIONAL
                 archiveFolderAction = $someArchiveFolderAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ArchiveFolderAction]) for enum values.
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the EmailSearch operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: EventSearch
              
             $query = New-RscQuerySnapshot -EventSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.calendarSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someCalendarSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 emailAddresses = @(
                     @{
                         # OPTIONAL
                         emailAddress = $someString
                         # OPTIONAL
                         filterType = $someCalendarEmailAddressFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarEmailAddressFilterType]) for enum values.
                     }
                 )
                 # OPTIONAL
                 timerange = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someO365CalendarSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365CalendarSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 recurrenceFilter = @{
                     # OPTIONAL
                     recurrenceType = $someCalendarRecurrenceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CalendarRecurrenceType]) for enum values.
                 }
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
                 # OPTIONAL
                 skipRifItems = $someBoolean
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365ExchangeObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the EventSearch operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: FilesDelta
              
             $query = New-RscQuerySnapshot -FilesDelta
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.path = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 deltaType = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
             }
             # OPTIONAL
             $query.Var.searchPrefix = $someString
             # OPTIONAL
             $query.Var.quarantineFilters = @(
                 $someQuarantineFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.QuarantineFilter]) for enum values.
             )
             # OPTIONAL
             $query.Var.workloadFieldsArg = @{
                 # OPTIONAL
                 o365FileDelta = @{
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     orgId = $someString
                 }
                 # OPTIONAL
                 o365SharepointDelta = @{
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     orgId = $someString
                     # OPTIONAL
                     sharepointSiteReq = @{
                         # OPTIONAL
                         siteChildId = $someString
                         # OPTIONAL
                         siteChildType = $someSharePointDescendantType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointDescendantType]) for enum values.
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnapshotFileDeltaConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the FilesDelta operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: FilesDeltaV2
              
             $query = New-RscQuerySnapshot -FilesDeltaV2
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.path = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 deltaType = @(
                     $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values.
                 )
             }
             # OPTIONAL
             $query.Var.searchPrefix = $someString
             # OPTIONAL
             $query.Var.quarantineFilters = @(
                 $someQuarantineFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.QuarantineFilter]) for enum values.
             )
             # OPTIONAL
             $query.Var.workloadFieldsArg = @{
                 # OPTIONAL
                 o365FileDelta = @{
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     orgId = $someString
                 }
                 # OPTIONAL
                 o365SharepointDelta = @{
                     # OPTIONAL
                     folderId = $someString
                     # OPTIONAL
                     orgId = $someString
                     # OPTIONAL
                     sharepointSiteReq = @{
                         # OPTIONAL
                         siteChildId = $someString
                         # OPTIONAL
                         siteChildType = $someSharePointDescendantType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointDescendantType]) for enum values.
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnapshotFileDeltaV2Connection</dev:code>
        <dev:remarks>
          <maml:para>Runs the FilesDeltaV2 operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: Fileset
              
             $query = New-RscQuerySnapshot -Fileset
              
             # REQUIRED
             $query.Var.id = $someString
             # OPTIONAL
             $query.Var.verbose = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: FilesetSnapshotDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the Fileset operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: FilesetFiles
              
             $query = New-RscQuerySnapshot -FilesetFiles
              
             # REQUIRED
             $query.Var.id = $someString
             # OPTIONAL
             $query.Var.limit = $someInt
             # OPTIONAL
             $query.Var.offset = $someInt
             # REQUIRED
             $query.Var.path = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BrowseResponseListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the FilesetFiles operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: LegalHoldSnappable
              
             $query = New-RscQuerySnapshot -LegalHoldSnappable
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 snappableId = $someString
                 # REQUIRED
                 filterParams = @(
                     @{
                         # OPTIONAL
                         filterField = $someLegalHoldQueryFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LegalHoldQueryFilterField]) for enum values.
                         # OPTIONAL
                         beforeTime = $someDateTime
                         # OPTIONAL
                         afterTime = $someDateTime
                         # OPTIONAL
                         snappableName = $someString
                         # OPTIONAL
                         snappableTypes = @(
                             $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                         )
                         # OPTIONAL
                         snapshotTypes = @(
                             $someSnapshotTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         snapshotCustomizations = @(
                             $someSnapshotCustomization # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotCustomization]) for enum values.
                         )
                     }
                 )
                 # OPTIONAL
                 sortParam = @{
                     # OPTIONAL
                     type = $someLegalHoldSortType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LegalHoldSortType]) for enum values.
                     # OPTIONAL
                     sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LegalHoldSnapshotDetailConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the LegalHoldSnappable operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: OnedriveSearch
              
             $query = New-RscQuerySnapshot -OnedriveSearch
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # REQUIRED
             $query.Var.orgId = $someString
             # OPTIONAL
             $query.Var.onedriveSearchFilter = @{
                 # OPTIONAL
                 searchKeywordFilter = @{
                     # OPTIONAL
                     searchKeyword = $someString
                     # OPTIONAL
                     keywordType = $someOnedriveSearchKeywordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchKeywordType]) for enum values.
                 }
                 # OPTIONAL
                 modifiedTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 createTime = @{
                     # OPTIONAL
                     fromTime = $someDateTime
                     # OPTIONAL
                     untilTime = $someDateTime
                 }
                 # OPTIONAL
                 searchObjectFilter = @{
                     # OPTIONAL
                     searchObjectType = $someOnedriveSearchObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OnedriveSearchObjectType]) for enum values.
                 }
                 # OPTIONAL
                 channelId = $someString
                 # OPTIONAL
                 channelFolderName = $someString
                 # OPTIONAL
                 channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values.
                 # OPTIONAL
                 excludeItemsUnderRoot = $someBoolean
                 # OPTIONAL
                 channelNameKeyword = $someString
                 # OPTIONAL
                 useExactVersionMatch = $someBoolean
                 # OPTIONAL
                 lambdaFilters = @{
                     # OPTIONAL
                     enableAbsolutePaths = $someBoolean
                     # OPTIONAL
                     enableAbsolutePathCachePreload = $someBoolean
                     # OPTIONAL
                     parentFolderIdBatch = @(
                         $someString
                     )
                     # OPTIONAL
                     searchRecurseFolderId = $someString
                     # OPTIONAL
                     includeAncestors = $someBoolean
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: O365OnedriveObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the OnedriveSearch operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: Polaris
              
             $query = New-RscQuerySnapshot -Polaris
              
             # REQUIRED
             $query.Var.snapshotFid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: PolarisSnapshot</dev:code>
        <dev:remarks>
          <maml:para>Runs the Polaris operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: Pvcs
              
             $query = New-RscQuerySnapshot -Pvcs
              
             # REQUIRED
             $query.Var.snapshotId = $someString
             # REQUIRED
             $query.Var.snappableId = $someString
             # REQUIRED
             $query.Var.isReplica = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;PvcInformation&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the Pvcs operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: QuarantinedDetails
              
             $query = New-RscQuerySnapshot -QuarantinedDetails
              
             # REQUIRED
             $query.Var.snapshotIds = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;QuarantineSpec&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the QuarantinedDetails operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: Results
              
             $query = New-RscQuerySnapshot -Results
              
             # REQUIRED
             $query.Var.snappableFid = $someString
             # REQUIRED
             $query.Var.startTimeMs = $someInt64
             # REQUIRED
             $query.Var.endTimeMs = $someInt64
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnapshotResultConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Results operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: SnappableList
              
             $query = New-RscQuerySnapshot -SnappableList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.workloadId = $someString
             # OPTIONAL
             $query.Var.snapshotFilter = @(
                 @{
                     # OPTIONAL
                     field = $someSnapshotQueryFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotQueryFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
                     # OPTIONAL
                     typeFilters = @(
                         $someSnapshotTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     shouldFetchLinked = $someBoolean
                     # OPTIONAL
                     textList = @(
                         $someString
                     )
                     # OPTIONAL
                     time = $someDateTime
                     # OPTIONAL
                     customizationFilters = @(
                         $someSnapshotCustomization # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotCustomization]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someSnapshotQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.timeRange = @{
                 # REQUIRED
                 start = $someDateTime
                 # REQUIRED
                 end = $someDateTime
             }
             # OPTIONAL
             $query.Var.ignoreActiveWorkloadCheck = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GenericSnapshotConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnappableList operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: SnappablesList
              
             $query = New-RscQuerySnapshot -SnappablesList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.snappableIds = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.snapshotFilter = @(
                 @{
                     # OPTIONAL
                     field = $someSnapshotQueryFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotQueryFilterField]) for enum values.
                     # OPTIONAL
                     text = $someString
                     # OPTIONAL
                     typeFilters = @(
                         $someSnapshotTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeEnum]) for enum values.
                     )
                     # OPTIONAL
                     shouldFetchLinked = $someBoolean
                     # OPTIONAL
                     textList = @(
                         $someString
                     )
                     # OPTIONAL
                     time = $someDateTime
                     # OPTIONAL
                     customizationFilters = @(
                         $someSnapshotCustomization # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotCustomization]) for enum values.
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.sortBy = $someSnapshotQuerySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotQuerySortByField]) for enum values.
             # OPTIONAL
             $query.Var.timeRange = @{
                 # REQUIRED
                 start = $someDateTime
                 # REQUIRED
                 end = $someDateTime
             }
             # OPTIONAL
             $query.Var.ignoreActiveWorkloadCheck = $someBoolean
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: GenericSnapshotConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnappablesList operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: SnappablesWithLegalHoldsSummary
              
             $query = New-RscQuerySnapshot -SnappablesWithLegalHoldsSummary
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 filterParams = @(
                     @{
                         # OPTIONAL
                         filterField = $someLegalHoldQueryFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LegalHoldQueryFilterField]) for enum values.
                         # OPTIONAL
                         beforeTime = $someDateTime
                         # OPTIONAL
                         afterTime = $someDateTime
                         # OPTIONAL
                         snappableName = $someString
                         # OPTIONAL
                         snappableTypes = @(
                             $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                         )
                         # OPTIONAL
                         snapshotTypes = @(
                             $someSnapshotTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeEnum]) for enum values.
                         )
                         # OPTIONAL
                         snapshotCustomizations = @(
                             $someSnapshotCustomization # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotCustomization]) for enum values.
                         )
                     }
                 )
                 # OPTIONAL
                 sortParam = @{
                     # OPTIONAL
                     type = $someLegalHoldSortType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LegalHoldSortType]) for enum values.
                     # OPTIONAL
                     sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: LegalHoldSnappableDetailConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SnappablesWithLegalHoldsSummary operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: Snapshot
              
             $query = New-RscQuerySnapshot -Snapshot
              
             # REQUIRED
             $query.Var.snapshotFid = $someString
             # OPTIONAL
             $query.Var.clusterUuid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmSnapshot</dev:code>
        <dev:remarks>
          <maml:para>Runs the Snapshot operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: UnmanagedObject
              
             $query = New-RscQuerySnapshot -UnmanagedObject
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterDate = $someDateTime
                 # OPTIONAL
                 beforeDate = $someDateTime
                 # OPTIONAL
                 limit = $someInt
                 # OPTIONAL
                 offset = $someInt
                 # OPTIONAL
                 searchValue = $someString
                 # OPTIONAL
                 snapshotType = $someV1QueryUnmanagedObjectSnapshotsV1RequestSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1QueryUnmanagedObjectSnapshotsV1RequestSnapshotType]) for enum values.
                 # OPTIONAL
                 sortBy = $someV1QueryUnmanagedObjectSnapshotsV1RequestSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1QueryUnmanagedObjectSnapshotsV1RequestSortBy]) for enum values.
                 # OPTIONAL
                 sortOrder = $someV1QueryUnmanagedObjectSnapshotsV1RequestSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V1QueryUnmanagedObjectSnapshotsV1RequestSortOrder]) for enum values.
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnapshotSummaryConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the UnmanagedObject operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: VappInstantRecoveryOptions
              
             $query = New-RscQuerySnapshot -VappInstantRecoveryOptions
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VappInstantRecoveryOptions</dev:code>
        <dev:remarks>
          <maml:para>Runs the VappInstantRecoveryOptions operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snapshot
             # API Operation: VappTemplateExportOptions
              
             $query = New-RscQuerySnapshot -VappTemplateExportOptions
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 orgVdcId = $someString
                 # REQUIRED
                 catalogId = $someString
                 # REQUIRED
                 name = $someString
                 # REQUIRED
                 snapshotId = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VappTemplateExportOptionsUnion</dev:code>
        <dev:remarks>
          <maml:para>Runs the VappTemplateExportOptions operation of the 'Snapshot' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySnmp</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySnmp</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'SNMP' API domain: ['Configurations'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySnmp creates a new query object for operations in the 'SNMP' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'SNMP' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['Configurations']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySnmp -Configurations).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySnmp -Configurations).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySnmp</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Configurations</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Snmp
             # API Operation: Configurations
              
             $query = New-RscQuerySnmp -Configurations
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SnmpConfiguration</dev:code>
        <dev:remarks>
          <maml:para>Runs the Configurations operation of the 'SNMP' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySonar</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySonar</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 2 operations in the 'Sonar' API domain: UserGroups, or Users.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySonar creates a new query object for operations in the 'Sonar' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 2 operations in the 'Sonar' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: UserGroups, or Users. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySonar -UserGroups).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySonar -UserGroups).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySonar</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UserGroups</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Users</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sonar
             # API Operation: UserGroups
              
             $query = New-RscQuerySonar -UserGroups
              
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 groupName = $someString
                 # OPTIONAL
                 userId = $someString
             }
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AccessGroupConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the UserGroups operation of the 'Sonar' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Sonar
             # API Operation: Users
              
             $query = New-RscQuerySonar -Users
              
             # OPTIONAL
             $query.Var.sort = @{
                 # OPTIONAL
                 sortBy = $someListAccessUsersSort # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ListAccessUsersSort]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 groupsIds = @(
                     $someString
                 )
                 # OPTIONAL
                 search = $someString
                 # REQUIRED
                 timeRange = @{
                     # OPTIONAL
                     startTime = $someString
                     # OPTIONAL
                     endTime = $someString
                     # OPTIONAL
                     timezone = $someString
                 }
             }
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AccessUserConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Users operation of the 'Sonar' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryStorageArray</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryStorageArray</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'Storage Arrays' API domain: ['StorageArray'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryStorageArray creates a new query object for operations in the 'Storage Arrays' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'Storage Arrays' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['StorageArray']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryStorageArray -StorageArray).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryStorageArray -StorageArray).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryStorageArray</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">StorageArray</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: StorageArray
             # API Operation: StorageArray
              
             $query = New-RscQueryStorageArray -StorageArray
              
             # REQUIRED
             $query.Var.input = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AllStorageArraysReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the StorageArray operation of the 'Storage Arrays' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQuerySyslog</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQuerySyslog</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'Syslog' API domain: ['ExportRules'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQuerySyslog creates a new query object for operations in the 'Syslog' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'Syslog' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['ExportRules']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySyslog -ExportRules).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQuerySyslog -ExportRules).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQuerySyslog</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ExportRules</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Syslog
             # API Operation: ExportRules
              
             $query = New-RscQuerySyslog -ExportRules
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SyslogExportRuleSummaryListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExportRules operation of the 'Syslog' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryThreat</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryThreat</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'Threat' API domain: HuntDetail, HuntResult, HuntSummary, or Hunts.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryThreat creates a new query object for operations in the 'Threat' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'Threat' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: HuntDetail, HuntResult, HuntSummary, or Hunts. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryThreat -HuntDetail).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryThreat -HuntDetail).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryThreat</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">HuntDetail</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HuntResult</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HuntSummary</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Hunts</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Threat
             # API Operation: HuntDetail
              
             $query = New-RscQueryThreat -HuntDetail
              
             # REQUIRED
             $query.Var.huntId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ThreatHunt</dev:code>
        <dev:remarks>
          <maml:para>Runs the HuntDetail operation of the 'Threat' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Threat
             # API Operation: HuntResult
              
             $query = New-RscQueryThreat -HuntResult
              
             # REQUIRED
             $query.Var.huntId = $someString
             # OPTIONAL
             $query.Var.objectId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ThreatHuntResult</dev:code>
        <dev:remarks>
          <maml:para>Runs the HuntResult operation of the 'Threat' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Threat
             # API Operation: HuntSummary
              
             $query = New-RscQueryThreat -HuntSummary
              
             # REQUIRED
             $query.Var.huntId = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ThreatHuntSummaryReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the HuntSummary operation of the 'Threat' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Threat
             # API Operation: Hunts
              
             $query = New-RscQueryThreat -Hunts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # OPTIONAL
             $query.Var.beginTime = $someDateTime
             # OPTIONAL
             $query.Var.endTime = $someDateTime
             # OPTIONAL
             $query.Var.clusterUuidFilter = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.statusFilter = @(
                 $someThreatHuntStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatHuntStatus]) for enum values.
             )
             # OPTIONAL
             $query.Var.matchesFoundFilter = @(
                 $someThreatHuntMatchesFound # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatHuntMatchesFound]) for enum values.
             )
             # OPTIONAL
             $query.Var.quarantinedMatchesFilter = @(
                 $someThreatHuntQuarantinedMatchType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatHuntQuarantinedMatchType]) for enum values.
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: ThreatHuntConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Hunts operation of the 'Threat' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryVcenter</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryVcenter</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 11 operations in the 'VMware vSphere vCenter' API domain: AdvancedTagPreview, AsyncRequestStatus, HotAddBandwidth, HotAddNetwork, HotAddProxy, HotAddProxyVmsV2, List, Networks, NumProxiesNeeded, PreAddInfo, or Vcenter.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryVcenter creates a new query object for operations in the 'VMware vSphere vCenter' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 11 operations in the 'VMware vSphere vCenter' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AdvancedTagPreview, AsyncRequestStatus, HotAddBandwidth, HotAddNetwork, HotAddProxy, HotAddProxyVmsV2, List, Networks, NumProxiesNeeded, PreAddInfo, or Vcenter. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVcenter -AdvancedTagPreview).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVcenter -AdvancedTagPreview).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryVcenter</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AdvancedTagPreview</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">AsyncRequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HotAddBandwidth</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HotAddNetwork</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HotAddProxy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HotAddProxyVmsV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">List</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Networks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NumProxiesNeeded</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">PreAddInfo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Vcenter</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: AdvancedTagPreview
              
             $query = New-RscQueryVcenter -AdvancedTagPreview
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 limit = $someInt
                 # OPTIONAL
                 offset = $someInt
                 # REQUIRED
                 filterCondition = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VcenterAdvancedTagPreviewReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the AdvancedTagPreview operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: AsyncRequestStatus
              
             $query = New-RscQueryVcenter -AsyncRequestStatus
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the AsyncRequestStatus operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: HotAddBandwidth
              
             $query = New-RscQueryVcenter -HotAddBandwidth
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HotAddBandwidthInfo</dev:code>
        <dev:remarks>
          <maml:para>Runs the HotAddBandwidth operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: HotAddNetwork
              
             $query = New-RscQueryVcenter -HotAddNetwork
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: HotAddNetworkConfigWithName</dev:code>
        <dev:remarks>
          <maml:para>Runs the HotAddNetwork operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: HotAddProxy
              
             $query = New-RscQueryVcenter -HotAddProxy
              
             # REQUIRED
             $query.Var.clusterUuids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;VcenterHotAddProxyVmInfo&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the HotAddProxy operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: HotAddProxyVmsV2
              
             $query = New-RscQueryVcenter -HotAddProxyVmsV2
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someVcenterProxyVmsFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VcenterProxyVmsFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # REQUIRED
             $query.Var.clusterUuids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereProxyVmInfoConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the HotAddProxyVmsV2 operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: List
              
             $query = New-RscQueryVcenter -List
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereVcenterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the List operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: Networks
              
             $query = New-RscQueryVcenter -Networks
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: NetworkInfoListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the Networks operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: NumProxiesNeeded
              
             $query = New-RscQueryVcenter -NumProxiesNeeded
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Int32</dev:code>
        <dev:remarks>
          <maml:para>Runs the NumProxiesNeeded operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: PreAddInfo
              
             $query = New-RscQueryVcenter -PreAddInfo
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
                 # REQUIRED
                 vcenterConfig = @{
                     # OPTIONAL
                     id = $someString
                     # OPTIONAL
                     connectionConfig = @{
                         # OPTIONAL
                         caCerts = $someString
                         # REQUIRED
                         hostname = $someString
                         # REQUIRED
                         password = $someString
                         # REQUIRED
                         username = $someString
                     }
                 }
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VcenterPreAddInfo</dev:code>
        <dev:remarks>
          <maml:para>Runs the PreAddInfo operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vcenter
             # API Operation: Vcenter
              
             $query = New-RscQueryVcenter -Vcenter
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereVcenter</dev:code>
        <dev:remarks>
          <maml:para>Runs the Vcenter operation of the 'VMware vSphere vCenter' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryVmware</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryVmware</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 4 operations in the 'VMware' API domain: CdpStateInfos, IsManagementEnabled, MissedRecoverableRanges, or RecoverableRanges.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryVmware creates a new query object for operations in the 'VMware' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 4 operations in the 'VMware' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CdpStateInfos, IsManagementEnabled, MissedRecoverableRanges, or RecoverableRanges. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVmware -CdpStateInfos).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVmware -CdpStateInfos).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryVmware</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">CdpStateInfos</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsManagementEnabled</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MissedRecoverableRanges</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRanges</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vmware
             # API Operation: CdpStateInfos
              
             $query = New-RscQueryVmware -CdpStateInfos
              
             # REQUIRED
             $query.Var.ids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;VmwareCdpStateInfo&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdpStateInfos operation of the 'VMware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vmware
             # API Operation: IsManagementEnabled
              
             $query = New-RscQueryVmware -IsManagementEnabled
              
             # No variables for this query.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsManagementEnabled operation of the 'VMware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vmware
             # API Operation: MissedRecoverableRanges
              
             $query = New-RscQueryVmware -MissedRecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VmwareRecoverableRangeListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the MissedRecoverableRanges operation of the 'VMware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vmware
             # API Operation: RecoverableRanges
              
             $query = New-RscQueryVmware -RecoverableRanges
              
             # REQUIRED
             $query.Var.input = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VmwareRecoverableRangeListResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRanges operation of the 'VMware' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryVsphere</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryVsphere</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 24 operations in the 'VMware vSphere' API domain: ComputeCluster, ComputeClusters, Datacenter, Datastore, DatastoreCluster, DatastoreClusters, DatastoreList, Folder, Folders, Host, HostDetails, HostList, HostsByFids, LiveMounts, Mount, MountList, Network, ResourcePool, RootRecoveryHierarchy, Tag, TagCategory, TopLevelDescendantsList, VmsByFids, or VmwareCdpLiveInfo.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryVsphere creates a new query object for operations in the 'VMware vSphere' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 24 operations in the 'VMware vSphere' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ComputeCluster, ComputeClusters, Datacenter, Datastore, DatastoreCluster, DatastoreClusters, DatastoreList, Folder, Folders, Host, HostDetails, HostList, HostsByFids, LiveMounts, Mount, MountList, Network, ResourcePool, RootRecoveryHierarchy, Tag, TagCategory, TopLevelDescendantsList, VmsByFids, or VmwareCdpLiveInfo. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVsphere -ComputeCluster).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVsphere -ComputeCluster).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryVsphere</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">ComputeCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ComputeClusters</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Datacenter</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Datastore</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatastoreCluster</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatastoreClusters</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DatastoreList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Folder</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Folders</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Host</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HostDetails</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HostList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">HostsByFids</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">LiveMounts</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Mount</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MountList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Network</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ResourcePool</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RootRecoveryHierarchy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Tag</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TagCategory</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">TopLevelDescendantsList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VmsByFids</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">VmwareCdpLiveInfo</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: ComputeCluster
              
             $query = New-RscQueryVsphere -ComputeCluster
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereComputeCluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the ComputeCluster operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: ComputeClusters
              
             $query = New-RscQueryVsphere -ComputeClusters
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereComputeClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the ComputeClusters operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Datacenter
              
             $query = New-RscQueryVsphere -Datacenter
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereDatacenter</dev:code>
        <dev:remarks>
          <maml:para>Runs the Datacenter operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Datastore
              
             $query = New-RscQueryVsphere -Datastore
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereDatastore</dev:code>
        <dev:remarks>
          <maml:para>Runs the Datastore operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: DatastoreCluster
              
             $query = New-RscQueryVsphere -DatastoreCluster
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereDatastoreCluster</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatastoreCluster operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: DatastoreClusters
              
             $query = New-RscQueryVsphere -DatastoreClusters
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereDatastoreClusterConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatastoreClusters operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: DatastoreList
              
             $query = New-RscQueryVsphere -DatastoreList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereDatastoreConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the DatastoreList operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 8 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Folder
              
             $query = New-RscQueryVsphere -Folder
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereFolder</dev:code>
        <dev:remarks>
          <maml:para>Runs the Folder operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Folders
              
             $query = New-RscQueryVsphere -Folders
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereFolderConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Folders operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Host
              
             $query = New-RscQueryVsphere -Host
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereHost</dev:code>
        <dev:remarks>
          <maml:para>Runs the Host operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 11 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: HostDetails
              
             $query = New-RscQueryVsphere -HostDetails
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 id = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VmwareHostDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the HostDetails operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 12 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: HostList
              
             $query = New-RscQueryVsphere -HostList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereHostConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the HostList operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 13 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: HostsByFids
              
             $query = New-RscQueryVsphere -HostsByFids
              
             # REQUIRED
             $query.Var.fids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: List&lt;VsphereHost&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the HostsByFids operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 14 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: LiveMounts
              
             $query = New-RscQueryVsphere -LiveMounts
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someVsphereLiveMountFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VsphereLiveMountFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
             }
             )
             # OPTIONAL
             $query.Var.sortBy = @{
                 # OPTIONAL
                 field = $someVsphereLiveMountSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VsphereLiveMountSortByField]) for enum values.
                 # OPTIONAL
                 sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereLiveMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the LiveMounts operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Mount
              
             $query = New-RscQueryVsphere -Mount
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereMount</dev:code>
        <dev:remarks>
          <maml:para>Runs the Mount operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 16 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: MountList
              
             $query = New-RscQueryVsphere -MountList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.filter = @{
                 # OPTIONAL
                 name = $someString
                 # OPTIONAL
                 clusterUuid = @(
                     $someString
                 )
                 # OPTIONAL
                 powerStatus = @(
                     $someBoolean
                 )
                 # OPTIONAL
                 sourceVmId = $someString
             }
             # OPTIONAL
             $query.Var.sortBy = $someVsphereMountSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VsphereMountSortBy]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereMountConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the MountList operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 17 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Network
              
             $query = New-RscQueryVsphere -Network
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereNetwork</dev:code>
        <dev:remarks>
          <maml:para>Runs the Network operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 18 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: ResourcePool
              
             $query = New-RscQueryVsphere -ResourcePool
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereResourcePool</dev:code>
        <dev:remarks>
          <maml:para>Runs the ResourcePool operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 19 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: RootRecoveryHierarchy
              
             $query = New-RscQueryVsphere -RootRecoveryHierarchy
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmHierarchyObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the RootRecoveryHierarchy operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 20 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: Tag
              
             $query = New-RscQueryVsphere -Tag
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereTag</dev:code>
        <dev:remarks>
          <maml:para>Runs the Tag operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 21 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: TagCategory
              
             $query = New-RscQueryVsphere -TagCategory
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereTagCategory</dev:code>
        <dev:remarks>
          <maml:para>Runs the TagCategory operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 22 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: TopLevelDescendantsList
              
             $query = New-RscQueryVsphere -TopLevelDescendantsList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.typeFilter = @(
                 $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values.
             )
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: CdmHierarchyObjectConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the TopLevelDescendantsList operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 23 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: VmsByFids
              
             $query = New-RscQueryVsphere -VmsByFids
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.last = $someInt
             # OPTIONAL
             $query.Var.before = $someString
             # REQUIRED
             $query.Var.fids = @(
                 $someString
             )
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereVmConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the VmsByFids operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 24 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Vsphere
             # API Operation: VmwareCdpLiveInfo
              
             $query = New-RscQueryVsphere -VmwareCdpLiveInfo
              
             # REQUIRED
             $query.Var.ids = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchVmwareCdpLiveInfo</dev:code>
        <dev:remarks>
          <maml:para>Runs the VmwareCdpLiveInfo operation of the 'VMware vSphere' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryVsphereVm</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryVsphereVm</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 6 operations in the 'VMware vSphere VM' API domain: AsyncRequestStatus, MissedRecoverableRange, New, NewList, RecoverableRange, or RecoverableRangeInBatch.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryVsphereVm creates a new query object for operations in the 'VMware vSphere VM' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'VMware vSphere VM' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AsyncRequestStatus, MissedRecoverableRange, New, NewList, RecoverableRange, or RecoverableRangeInBatch. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVsphereVm -AsyncRequestStatus).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryVsphereVm -AsyncRequestStatus).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryVsphereVm</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">AsyncRequestStatus</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MissedRecoverableRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">New</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">NewList</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRange</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">RecoverableRangeInBatch</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: AsyncRequestStatus
              
             $query = New-RscQueryVsphereVm -AsyncRequestStatus
              
             # REQUIRED
             $query.Var.clusterUuid = $someString
             # REQUIRED
             $query.Var.id = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the AsyncRequestStatus operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: MissedRecoverableRange
              
             $query = New-RscQueryVsphereVm -MissedRecoverableRange
              
             # REQUIRED
             $query.Var.snappableFid = $someString
             # OPTIONAL
             $query.Var.beforeTime = $someDateTime
             # OPTIONAL
             $query.Var.afterTime = $someDateTime
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RecoverableRangeResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the MissedRecoverableRange operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 3 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: New
              
             $query = New-RscQueryVsphereVm -New
              
             # REQUIRED
             $query.Var.fid = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereVm</dev:code>
        <dev:remarks>
          <maml:para>Runs the New operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 4 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: NewList
              
             $query = New-RscQueryVsphereVm -NewList
              
             # OPTIONAL
             $query.Var.first = $someInt
             # OPTIONAL
             $query.Var.after = $someString
             # OPTIONAL
             $query.Var.sortBy = $someHierarchySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchySortByField]) for enum values.
             # OPTIONAL
             $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
             # OPTIONAL
             $query.Var.filter = @(
                 @{
                     # OPTIONAL
                     field = $someHierarchyFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyFilterField]) for enum values.
                     # OPTIONAL
                     texts = @(
                         $someString
                     )
                     # OPTIONAL
                     tagFilterParams = @(
                         @{
                             # OPTIONAL
                             filterType = $someTagFilterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagFilterType]) for enum values.
                             # OPTIONAL
                             tagKey = $someString
                             # OPTIONAL
                             tagValue = $someString
                         }
                     )
                     # OPTIONAL
                     objectTypeFilterParams = @(
                         $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                     )
                     # OPTIONAL
                     awsNativeProtectionFeatureNames = @(
                         $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     isNegative = $someBoolean
                     # OPTIONAL
                     isSlowSearchEnabled = $someBoolean
                     # OPTIONAL
                     azureNativeProtectionFeatureNames = @(
                         $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values.
                     )
                     # OPTIONAL
                     unmanagedObjectAvailabilityFilter = @(
                         $someUnmanagedObjectAvailabilityFilter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmanagedObjectAvailabilityFilter]) for enum values.
                     )
             }
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: VsphereVmConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the NewList operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 5 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: RecoverableRange
              
             $query = New-RscQueryVsphereVm -RecoverableRange
              
             # REQUIRED
             $query.Var.snappableFid = $someString
             # OPTIONAL
             $query.Var.beforeTime = $someDateTime
             # OPTIONAL
             $query.Var.afterTime = $someDateTime
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: RecoverableRangeResponse</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRange operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 6 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: VsphereVm
             # API Operation: RecoverableRangeInBatch
              
             $query = New-RscQueryVsphereVm -RecoverableRangeInBatch
              
             # REQUIRED
             $query.Var.requestInfo = @{
                 # OPTIONAL
                 afterTime = $someDateTime
                 # OPTIONAL
                 beforeTime = $someDateTime
                 # REQUIRED
                 vmIds = @(
                     $someString
                 )
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: BatchVmwareVmRecoverableRanges</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverableRangeInBatch operation of the 'VMware vSphere VM' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>New-RscQueryWebhook</command:name>
      <command:verb>New</command:verb>
      <command:noun>RscQueryWebhook</command:noun>
      <maml:description>
        <maml:para>Create a new RscQuery object for any of the 1 operations in the 'Webhook' API domain: ['Webhook'].</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscQueryWebhook creates a new query object for operations in the 'Webhook' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 1 operations in the 'Webhook' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ['Webhook']. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryWebhook -Webhook).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryWebhook -Webhook).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>New-RscQueryWebhook</maml:name>
        <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
          <maml:name>Operation</maml:name>
          <maml:description>
            <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">Webhook</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
          <maml:name>Var</maml:name>
          <maml:description>
            <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>AddField</maml:name>
          <maml:description>
            <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Copy</maml:name>
          <maml:description>
            <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
          <dev:type>
            <maml:name>RscQuery</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
          <maml:name>Field</maml:name>
          <maml:description>
            <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
          <dev:type>
            <maml:name>Object</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FieldProfile</maml:name>
          <maml:description>
            <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
          </maml:description>
          <command:parameterValueGroup>
            <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue>
          </command:parameterValueGroup>
          <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
          <dev:type>
            <maml:name>Profile</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>FilePatch</maml:name>
          <maml:description>
            <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>RemoveField</maml:name>
          <maml:description>
            <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
          <maml:name>ValidPatchSet</maml:name>
          <maml:description>
            <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
          </maml:description>
          <dev:type>
            <maml:name>SwitchParameter</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
          <maml:name>ProgressAction</maml:name>
          <maml:description>
            <maml:para>{{ Fill ProgressAction Description }}</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
          <dev:type>
            <maml:name>ActionPreference</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>AddField</maml:name>
        <maml:description>
          <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Copy</maml:name>
        <maml:description>
          <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue>
        <dev:type>
          <maml:name>RscQuery</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none">
        <maml:name>Field</maml:name>
        <maml:description>
          <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FieldProfile</maml:name>
        <maml:description>
          <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue>
        <dev:type>
          <maml:name>Profile</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>FilePatch</maml:name>
        <maml:description>
          <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none">
        <maml:name>Operation</maml:name>
        <maml:description>
          <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>RemoveField</maml:name>
        <maml:description>
          <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none">
        <maml:name>ValidPatchSet</maml:name>
        <maml:description>
          <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
        <dev:type>
          <maml:name>SwitchParameter</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none">
        <maml:name>Var</maml:name>
        <maml:description>
          <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">Object</command:parameterValue>
        <dev:type>
          <maml:name>Object</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga">
        <maml:name>ProgressAction</maml:name>
        <maml:description>
          <maml:para>{{ Fill ProgressAction Description }}</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue>
        <dev:type>
          <maml:name>ActionPreference</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <maml:name>System.String</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RubrikSecurityCloud.RscQuery</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>System.Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para></maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para></maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>-------------------------- Example 1 --------------------------</maml:title>
        <dev:code>PS &gt;
             
              
             # Create an RscQuery object for:
             # API Domain: Webhook
             # API Operation: Webhook
              
             $query = New-RscQueryWebhook -Webhook
              
             # OPTIONAL
             $query.Var.name = $someString
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: WebhookConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Webhook operation of the 'Webhook' API domain.</maml:para>
        </dev:remarks>
      </command:example>
    </command:examples>
    <command:relatedLinks />
  </command:command>
</helpItems>