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, allIamPairsByCloudAccountAndLocation, allIntegrations, allInventoryWorkloads, allIssuesJobIds, allK8sReplicaSnapshotInfos, allKmsEncryptionKeysByRegionFromAws, allLatestFeaturePermissionsForCloudAccounts, allLicensedProducts, allMipLabels, 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, allWebhookMessageTemplates, allWebhooks, allWebhooksV2, amiTypeForAwsNativeArchivedSnapshotExport, analyzerGroups, analyzerUsages, anomalyResultOpt, anomalyResults, anomalyResultsGrouped, approveRcvPrivateEndpoint, approveTprRequest, 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, bulkExportMssqlDatabases, bulkOnDemandSnapshotNutanixVm, bulkRefreshHosts, bulkRegisterHost, bulkRegisterHostAsync, bulkTierExistingSnapshots, bulkUpdateExchangeDag, bulkUpdateFilesetTemplate, bulkUpdateHost, bulkUpdateMssqlAvailabilityGroup, bulkUpdateMssqlDbs, bulkUpdateMssqlInstance, bulkUpdateMssqlPropertiesOnHost, bulkUpdateMssqlPropertiesOnWindowsCluster, bulkUpdateNasNamespaces, bulkUpdateNasShares, bulkUpdateOracleDatabases, bulkUpdateOracleHosts, bulkUpdateOracleRacs, bulkUpdateRansomwareInvestigationStatus, cancelActivitySeries, cancelDownloadPackage, cancelScheduledUpgrade, cancelTaskchain, cancelThreatHunt, cancelTprRequest, 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, cloudClusterRecoveryValidation, cloudDirectClusterEndpoints, cloudDirectNasExport, cloudDirectNasNamespace, cloudDirectNasNamespaces, cloudDirectNasShare, cloudDirectNasSystem, cloudDirectNasSystems, 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, countClusters, 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, createDistributionListDigestBatch, 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, createTprPolicy, createUser, createUserWithPassword, createVappsInstantRecovery, createVsphereAdvancedTag, createVsphereVcenter, createWebhook, createWebhookV2, crossAccountPairs, currentIpAddress, currentOrg, currentOrgAuthDomainConfig, currentUser, currentUserLoginContext, customAnalyzer, customTprPolicies, 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, deleteTerminatedClusterOperationJobData, deleteTotpConfig, deleteTotpConfigs, deleteTprPolicy, deleteUnmanagedSnapshots, deleteUsersFromAccount, deleteVolumeGroupMount, deleteVsphereAdvancedTag, deleteVsphereLiveMount, deleteWebhook, deleteWebhookV2, denyTprRequests, deploymentVersion, deregisterPrivateContainerRegistry, diffFmd, disableReplicationPause, disableSupportUserAccess, disableTarget, disableTprOrg, disconnectAwsExocomputeCluster, disconnectExocomputeCluster, discoverDb2Instance, discoverMongoSource, discoverNodes, discoveryTimeline, dissolveLegalHold, distributionListDigest, doesAzureNativeResourceGroupExist, downloadActiveDirectorySnapshotFromLocation, downloadAuditLogCsvAsync, downloadCdmTprConfigurationAsync, downloadCdmUpgradesPdf, downloadDb2Snapshot, downloadDb2SnapshotV2, downloadDb2SnapshotsForPointInTimeRecovery, downloadExchangeSnapshot, downloadExchangeSnapshotV2, downloadFilesNutanixSnapshot, downloadFilesetSnapshot, downloadFilesetSnapshotFromLocation, downloadFromArchiveV2, downloadHypervSnapshotFromLocation, downloadHypervVirtualMachineLevelFiles, downloadHypervVirtualMachineSnapshot, downloadHypervVirtualMachineSnapshotFiles, downloadK8sSnapshotFromLocation, 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, enableTprOrg, endManagedVolumeSnapshot, exchangeDag, exchangeDags, exchangeDatabase, exchangeDatabases, exchangeLiveMounts, exchangeServer, exchangeServers, excludeAwsNativeEbsVolumesFromSnapshot, excludeAzureNativeManagedDisksFromSnapshot, excludeSharepointObjectsFromProtection, excludeVmDisks, executeTprRequests, exocomputeClusterConnect, exocomputeGetClusterConnectionInfo, expireDownloadedDb2Snapshots, expireDownloadedSapHanaSnapshots, expireSnoozedDirectories, exportHypervVirtualMachine, exportK8sNamespace, exportK8sProtectionSetSnapshot, exportManagedVolumeSnapshot, exportMssqlDatabase, exportNutanixSnapshot, exportO365Mailbox, exportO365MailboxV2, exportOracleDatabase, exportOracleTablespace, exportSlaManagedVolumeSnapshot, externalDeploymentName, failedRestoreItemsInfo, failoverClusterApp, failoverClusterApps, failoverClusterTopLevelDescendants, featurePermissionForDataCenterRoleBasedArchival, 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, inplaceExportNutanixSnapshot, insertCustomerO365App, installIoFilter, installedVersionList, instantRecoverHypervVirtualMachineSnapshot, instantRecoverOracleSnapshot, integration, inventoryRoot, inventorySubHierarchyRoot, investigationCsvDownloadLink, inviteSsoGroup, ipWhitelist, isAwsNativeEbsVolumeSnapshotRestorable, isAwsNativeRdsInstanceLaunchConfigurationValid, isAwsS3BucketNameAvailable, isAzureNativeManagedDiskSnapshotRestorable, isAzureNativeSqlDatabaseSnapshotPersistent, isAzureStorageAccountNameAvailable, isCloudClusterDiskUpgradeAvailable, isCloudNativeFileRecoveryFeasible, isIpmiEnabled, isLoggedIntoRubrikSupportPortal, isOrgServiceAccountDisabled, isReplaceNodeTprConfigured, isSfdcReachable, isTotpAckNecessaryForCluster, isTotpMandatoryInTargetVersion, isTriggerRcvGrsTprConfigured, isUpgradeAvailable, isUpgradeRecommended, isVMwareManagementEnabled, isValidTprPolicyName, 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, m365BackupStorageLicenseUsage, m365BackupStorageObjectRestorePoints, m365DayToDayModeStats, m365DirectoryObjectAttributes, m365LicenseEntitlement, m365OnboardingModeBackupStats, m365OnboardingModeStats, m365OrgBackupLocations, m365OrgOperationModes, m365Regions, makePrimary, manageProtectionForLinkedObjects, managedVolume, managedVolumeInventoryStats, managedVolumeLiveMounts, managedVolumes, mapAzureCloudAccountExocomputeSubscription, mapAzureCloudAccountToPersistentStorageLocation, mapCloudAccountExocomputeAccount, markAgentSecondaryCertificate, maxProtectedAppsCount, mfaSetting, microsoftSites, migrateCloudClusterDisks, migrateNutanixMountV1, minimumCdmVersionForFeatureSet, modifyActiveDirectoryLiveMount, modifyDistributionListDigestBatch, 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, nasShares, 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, recoverCloudDirectNasShare, 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, removeNodeForReplacement, removePolicyObjects, removePrivateEndpointConnection, removeProxyConfig, removeVlans, removedNodeDetails, replaceClusterNode, replicationIncomingStats, replicationNetworkThrottleBypass, replicationNetworkThrottleBypassById, replicationOutgoingStats, replicationPairs, reportData, requestPersistentExocluster, reseedLogShippingSecondary, resetAllOrgUsersPasswords, resetUsersPasswordsWithUserIds, resizeDisk, resizeManagedVolume, resolveAnomaly, resolveVolumeGroupsConflict, restoreActiveDirectoryObjects, restoreAzureAdObjectsWithPasswords, restoreDomainControllerSnapshot, restoreFilesNutanixSnapshot, restoreHypervVirtualMachineSnapshotFiles, restoreK8sNamespace, restoreK8sProtectionSetSnapshot, restoreMssqlDatabase, restoreO365FullTeams, restoreO365Mailbox, restoreO365MailboxV2, restoreO365Snappable, restoreO365TeamsConversations, restoreO365TeamsFiles, restoreObjectsDryRun, restoreOracleLogs, restoreSapHanaSystemStorage, restoreVolumeGroupSnapshotFiles, resumeTarget, retryAddMongoSource, retryBackup, retryDownloadPackageJob, revokeAllOrgRoles, roleTemplates, rotateServiceAccountSecret, rscPermsToCdmInfo, runCustomAnalyzer, s3BucketStateForRecovery, sapHanaDatabase, sapHanaDatabases, sapHanaLogSnapshot, sapHanaLogSnapshots, sapHanaRecoverableRange, sapHanaRecoverableRanges, sapHanaSystem, sapHanaSystems, scheduleUpgradeBatchJob, scheduledReport, scheduledReports, searchAzureAdSnapshot, searchFileByPrefix, searchHost, searchNutanixVm, searchSnappableConnection, searchSnappableVersionedFiles, seedEnabledPolicies, seedInitialPolicies, sendPdfReport, sendScheduledReportAsync, sendTestMessageToExistingWebhook, sendTestMessageToWebhook, serviceAccounts, sessionInactivityTimeoutInSeconds, 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, snapshotsOfCloudDirectShare, snmpConfigurations, snoozedDirectories, sonarContentReport, sonarReport, sonarReportRow, sonarUserGroups, sonarUsers, ssoGroupAlreadyExists, 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, submitTprRequest, 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, tprConfiguration, tprPolicyDetail, tprPublicConfiguration, tprRequestDetail, tprRequestSummaries, tprRoleEligibility, tprRulesMap, tprStatusForNodeRemoval, triggerCloudComputeConnectivityCheck, triggerExocomputeHealthCheck, triggerRansomwareDetection, tunnelStatus, unconfigureSapHanaRestore, uninstallIoFilter, uniqueHypervServersCount, uniqueVcdCount, unlockUsersByAdmin, unmanagedObjects, unmapAzureCloudAccountExocomputeSubscription, unmapAzurePersistentStorageSubscription, unmapCloudAccountExocomputeAccount, unmountDisk, updateAccountOwner, updateAdGroup, updateAgentDeploymentSetting, updateAgentDeploymentSettingInBatch, updateAgentDeploymentSettingInBatchNew, updateAuthDomainUsersHiddenStatus, updateAutoEnablePolicyClusterConfig, updateAutomaticAwsTargetMapping, updateAutomaticAzureTargetMapping, updateAwsAccount, updateAwsCloudAccount, updateAwsCloudAccountFeature, updateAwsComputeSetting, updateAwsExocomputeConfigs, updateAwsIamPair, updateAwsTarget, updateAzureAccount, updateAzureCloudAccount, updateAzureTarget, updateBackupThrottleSetting, updateBadDiskLedStatus, updateCassandraSource, updateCertificate, updateCertificateHost, updateCloudNativeAwsStorageSetting, updateCloudNativeAzureStorageSetting, updateCloudNativeIndexingStatus, updateCloudNativeLabelRule, updateCloudNativeRcvAzureStorageSetting, updateCloudNativeRootThreatMonitoringEnablement, updateCloudNativeTagRule, updateClusterDefaultAddress, updateClusterLocation, updateClusterNtpServers, updateClusterPauseStatus, updateClusterSettings, updateConfiguredGroup, updateCustomAnalyzer, updateCustomIntelFeed, updateCustomReport, updateCustomerAppPermissionForAzureSql, updateCustomerAppPermissions, updateDatabaseLogReportingPropertiesForCluster, updateDistributionListDigest, updateDnsServersAndSearchDomains, updateEventDigest, updateFailoverCluster, updateFailoverClusterApp, updateFileset, 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, updateTprConfiguration, updateTprPolicy, updateTunnelStatus, updateVcenter, updateVcenterHotAddBandwidth, updateVcenterHotAddNetwork, updateVcenterV2, updateVlan, updateVolumeGroup, updateVsphereAdvancedTag, updateVsphereVm, updateVsphereVmNew, updateWebhook, updateWebhookV2, updateWhitelistedAnalyzers, upgradeAwsCloudAccountFeaturesWithoutCft, upgradeAwsIamUserBasedCloudAccountPermissions, upgradeAzureCloudAccount, upgradeAzureCloudAccountPermissionsWithoutOauth, upgradeCdmManagedTarget, upgradeGcpCloudAccountPermissionsWithoutOauth, upgradeIoFilter, upgradeSlas, upgradeStatus, upgradeToRsc, uploadDatabaseSnapshotToBlobstore, userActivities, userActivityTimeline, userAlreadyExists, 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, vSphereTopLevelRecoveryTargets, 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, vsphereSnapshotConsistency, 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, webhookById, webhookMessageTemplateById, 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-RscType</command:name>
      <command:verb>Get</command:verb>
      <command:noun>RscType</command:noun>
      <maml:description>
        <maml:para>Create a new .NET object from the RubrikSecurityCloud.Types namespace, with pre-selected fields.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>With -Name, the cmdlet returns a new .NET object from the RubrikSecurityCloud.Types namespace (both output and input types), with pre-selected fields with -InitialProperties or -InitialValues. 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 RubrikSecurityCloud.Types 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 RubrikSecurityCloud.Types 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 -Name Filter -InitialValues @{"texts" = @("a", "b")}</dev:code>
        <dev:remarks>
          <maml:para>Create a filter input object with "a" "b" for text filters.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>-------------------------- Example 2 --------------------------</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 3 --------------------------</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 4 --------------------------</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 5 --------------------------</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 6 --------------------------</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 7 --------------------------</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 8 --------------------------</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 9 --------------------------</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, approveTprRequest, 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, bulkExportMssqlDatabases, bulkOnDemandSnapshotNutanixVm, bulkRefreshHosts, bulkRegisterHost, bulkRegisterHostAsync, bulkTierExistingSnapshots, bulkUpdateExchangeDag, bulkUpdateFilesetTemplate, bulkUpdateHost, bulkUpdateMssqlAvailabilityGroup, bulkUpdateMssqlDbs, bulkUpdateMssqlInstance, bulkUpdateMssqlPropertiesOnHost, bulkUpdateMssqlPropertiesOnWindowsCluster, bulkUpdateNasNamespaces, bulkUpdateNasShares, bulkUpdateOracleDatabases, bulkUpdateOracleHosts, bulkUpdateOracleRacs, bulkUpdateRansomwareInvestigationStatus, cancelActivitySeries, cancelDownloadPackage, cancelScheduledUpgrade, cancelTaskchain, cancelThreatHunt, cancelTprRequest, 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, createDistributionListDigestBatch, 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, createTprPolicy, createUser, createUserWithPassword, createVappsInstantRecovery, createVsphereAdvancedTag, createVsphereVcenter, createWebhook, createWebhookV2, 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, deleteTerminatedClusterOperationJobData, deleteTotpConfig, deleteTotpConfigs, deleteTprPolicy, deleteUnmanagedSnapshots, deleteUsersFromAccount, deleteVolumeGroupMount, deleteVsphereAdvancedTag, deleteVsphereLiveMount, deleteWebhook, deleteWebhookV2, denyTprRequests, deregisterPrivateContainerRegistry, disableReplicationPause, disableSupportUserAccess, disableTarget, disableTprOrg, disconnectAwsExocomputeCluster, disconnectExocomputeCluster, discoverDb2Instance, discoverMongoSource, dissolveLegalHold, downloadActiveDirectorySnapshotFromLocation, downloadAuditLogCsvAsync, downloadCdmTprConfigurationAsync, downloadDb2Snapshot, downloadDb2SnapshotsForPointInTimeRecovery, downloadDb2SnapshotV2, downloadExchangeSnapshot, downloadExchangeSnapshotV2, downloadFilesetSnapshot, downloadFilesetSnapshotFromLocation, downloadFilesNutanixSnapshot, downloadFromArchiveV2, downloadHypervSnapshotFromLocation, downloadHypervVirtualMachineLevelFiles, downloadHypervVirtualMachineSnapshot, downloadHypervVirtualMachineSnapshotFiles, downloadK8sSnapshotFromLocation, 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, enableTprOrg, endManagedVolumeSnapshot, excludeAwsNativeEbsVolumesFromSnapshot, excludeAzureNativeManagedDisksFromSnapshot, excludeSharepointObjectsFromProtection, excludeVmDisks, executeTprRequests, exocomputeClusterConnect, 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, inplaceExportNutanixSnapshot, insertCustomerO365App, installIoFilter, instantRecoverHypervVirtualMachineSnapshot, instantRecoverOracleSnapshot, inviteSsoGroup, joinSmbDomain, listCidrsForComputeSetting, lockUsersByAdmin, logoutFromRubrikSupportPortal, makePrimary, manageProtectionForLinkedObjects, mapAzureCloudAccountExocomputeSubscription, mapAzureCloudAccountToPersistentStorageLocation, mapCloudAccountExocomputeAccount, markAgentSecondaryCertificate, migrateCloudClusterDisks, migrateNutanixMountV1, modifyActiveDirectoryLiveMount, modifyDistributionListDigestBatch, 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, recoverCloudDirectNasShare, 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, removeNodeForReplacement, removePolicyObjects, removePrivateEndpointConnection, removeProxyConfig, removeVlans, replaceClusterNode, requestPersistentExocluster, reseedLogShippingSecondary, resetAllOrgUsersPasswords, resetUsersPasswordsWithUserIds, resizeDisk, resizeManagedVolume, resolveAnomaly, resolveVolumeGroupsConflict, restoreActiveDirectoryObjects, restoreAzureAdObjectsWithPasswords, restoreDomainControllerSnapshot, restoreFilesNutanixSnapshot, restoreHypervVirtualMachineSnapshotFiles, restoreK8sNamespace, restoreK8sProtectionSetSnapshot, restoreMssqlDatabase, restoreO365FullTeams, restoreO365Mailbox, restoreO365MailboxV2, restoreO365Snappable, restoreO365TeamsConversations, restoreO365TeamsFiles, restoreObjectsDryRun, restoreOracleLogs, restoreSapHanaSystemStorage, restoreVolumeGroupSnapshotFiles, resumeTarget, retryAddMongoSource, retryBackup, retryDownloadPackageJob, revokeAllOrgRoles, rotateServiceAccountSecret, runCustomAnalyzer, scheduleUpgradeBatchJob, seedEnabledPolicies, seedInitialPolicies, sendPdfReport, sendScheduledReportAsync, sendTestMessageToExistingWebhook, sendTestMessageToWebhook, 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, submitTprRequest, supportPortalLogin, switchProductToOnboardingMode, takeManagedVolumeOnDemandSnapshot, takeMssqlLogBackup, takeOnDemandOracleDatabaseSnapshot, takeOnDemandOracleLogSnapshot, takeOnDemandSnapshot, testExistingWebhook, testSyslogExportRule, testWebhook, triggerCloudComputeConnectivityCheck, triggerExocomputeHealthCheck, triggerRansomwareDetection, unconfigureSapHanaRestore, uninstallIoFilter, unlockUsersByAdmin, unmapAzureCloudAccountExocomputeSubscription, unmapAzurePersistentStorageSubscription, unmapCloudAccountExocomputeAccount, unmountDisk, updateAccountOwner, updateAdGroup, updateAgentDeploymentSetting, updateAgentDeploymentSettingInBatch, updateAgentDeploymentSettingInBatchNew, updateAuthDomainUsersHiddenStatus, updateAutoEnablePolicyClusterConfig, updateAutomaticAwsTargetMapping, updateAutomaticAzureTargetMapping, updateAwsAccount, updateAwsCloudAccount, updateAwsCloudAccountFeature, updateAwsComputeSetting, updateAwsExocomputeConfigs, updateAwsIamPair, updateAwsTarget, updateAzureAccount, updateAzureCloudAccount, updateAzureTarget, updateBackupThrottleSetting, updateBadDiskLedStatus, updateCassandraSource, updateCertificate, updateCertificateHost, updateCloudNativeAwsStorageSetting, updateCloudNativeAzureStorageSetting, updateCloudNativeIndexingStatus, updateCloudNativeLabelRule, updateCloudNativeRcvAzureStorageSetting, updateCloudNativeRootThreatMonitoringEnablement, updateCloudNativeTagRule, updateClusterDefaultAddress, updateClusterLocation, updateClusterNtpServers, updateClusterPauseStatus, updateClusterSettings, updateConfiguredGroup, updateCustomAnalyzer, updateCustomerAppPermissionForAzureSql, updateCustomerAppPermissions, updateCustomIntelFeed, updateCustomReport, updateDatabaseLogReportingPropertiesForCluster, updateDistributionListDigest, updateDnsServersAndSearchDomains, updateEventDigest, updateFailoverCluster, updateFailoverClusterApp, updateFileset, 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, updateTprConfiguration, updateTprPolicy, updateTunnelStatus, updateVcenter, updateVcenterHotAddBandwidth, updateVcenterHotAddNetwork, updateVcenterV2, updateVlan, updateVolumeGroup, updateVsphereAdvancedTag, updateVsphereVm, updateVsphereVmNew, updateWebhook, updateWebhookV2, updateWhitelistedAnalyzers, upgradeAwsCloudAccountFeaturesWithoutCft, upgradeAwsIamUserBasedCloudAccountPermissions, upgradeAzureCloudAccount, upgradeAzureCloudAccountPermissionsWithoutOauth, upgradeCdmManagedTarget, upgradeGcpCloudAccountPermissionsWithoutOauth, upgradeIoFilter, upgradeSlas, upgradeToRsc, uploadDatabaseSnapshotToBlobstore, validateAndCreateAwsCloudAccount, validateAndInitiateAwsOutpostAccount, validateAndSaveCustomerKmsInfo, validateOracleAcoFile, validateOracleDatabaseBackups, vmMakePrimary, vmwareDownloadSnapshotFromLocation, vsphereBulkOnDemandSnapshot, vsphereDeleteVcenter, vsphereExcludeVmDisks, vsphereExportSnapshotToStandaloneHostV2, vsphereOnDemandSnapshot, vsphereSnapshotConsistency, 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 -Operation 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
                        authDomainId = $someString
                    }
                )
                # OPTIONAL
                isServiceAccountEnabled = $someBoolean
                # OPTIONAL
                isServiceAccountDisabled = $someBoolean
                # OPTIONAL
                isInheritIpAllowlistDisabled = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
            )
            # OPTIONAL
            $query.Var.isSynced = $someBoolean
             
            # 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 -Operation 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
                        authDomainId = $someString
                    }
                )
                # OPTIONAL
                isServiceAccountEnabled = $someBoolean
                # OPTIONAL
                isServiceAccountDisabled = $someBoolean
                # OPTIONAL
                isInheritIpAllowlistDisabled = $someBoolean
                # OPTIONAL
                shouldKeepGlobalIpAllowlist = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 36 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, UpdateIamPair, 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 36 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, UpdateIamPair, 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">UpdateIamPair</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 -Operation 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 -Operation 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 -Operation 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 -Operation CreateAccount
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                name = $someString
                # OPTIONAL
                description = $someString
                # REQUIRED
                accessKey = $someString
                # REQUIRED
                secretKey = $someString
                # OPTIONAL
                stsEndpoint = $someString
                # OPTIONAL
                stsRegion = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
            }
             
            # 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 -Operation 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 -Operation 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 -Operation CreateCluster
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                cloudAccountId = $someString
                # OPTIONAL
                isEsType = $someBoolean
                # OPTIONAL
                keepClusterOnFailure = $someBoolean
                # OPTIONAL
                region = $someString
                # OPTIONAL
                disableApiTermination = $someBoolean
                # OPTIONAL
                usePlacementGroups = $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
                    placementGroupName = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                    orgId = $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
                        orgId = $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
                # OPTIONAL
                orgId = $someString
                # OPTIONAL
                awsChildOus = @(
                    @{
                        # OPTIONAL
                        nativeId = $someString
                        # OPTIONAL
                        name = $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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation UpdateAccount
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                id = $someString
                # REQUIRED
                name = $someString
                # OPTIONAL
                description = $someString
                # REQUIRED
                accessKey = $someString
                # REQUIRED
                secretKey = $someString
                # OPTIONAL
                stsEndpoint = $someString
                # OPTIONAL
                stsRegion = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values.
            }
             
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: UpdateIamPair
             
            $query = New-RscMutationAws -Operation UpdateIamPair
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                awsIamPairId = $someString
                # OPTIONAL
                awsIamRoleName = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateIamPair 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: UpdateTarget
             
            $query = New-RscMutationAws -Operation 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 33 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Aws
            # API Operation: UpgradeCloudAccountFeaturesWithoutCft
             
            $query = New-RscMutationAws -Operation 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 34 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Aws
            # API Operation: UpgradeIamUserBasedCloudAccountPermissions
             
            $query = New-RscMutationAws -Operation 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 35 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Aws
            # API Operation: ValidateAndCreateCloudAccount
             
            $query = New-RscMutationAws -Operation 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
                    orgId = $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
                        orgId = $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
                # OPTIONAL
                orgId = $someString
                # OPTIONAL
                awsChildOus = @(
                    @{
                        # OPTIONAL
                        nativeId = $someString
                        # OPTIONAL
                        name = $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: 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 36 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Aws
            # API Operation: ValidateAndInitiateOutpostAccount
             
            $query = New-RscMutationAws -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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.
                # OPTIONAL
                archivedSnapshotId = $someString
            }
             
            # 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 -Operation 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 -Operation 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 -Operation 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.
                # OPTIONAL
                archivedSnapshotId = $someString
            }
             
            # 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 -Operation 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.
                )
                # OPTIONAL
                isAsynchronous = $someBoolean
            }
             
            # 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 -Operation AddCloudAccountExocomputeConfigurations
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                cloudAccountId = $someString
                # REQUIRED
                azureExocomputeRegionConfigs = @(
                    @{
                        # REQUIRED
                        region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                        # OPTIONAL
                        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 -Operation 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
                isAsynchronous = $someBoolean
                # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                computeProxySettings = @{
                    # OPTIONAL
                    proxyServer = $someString
                    # OPTIONAL
                    portNumber = $someInt
                    # OPTIONAL
                    username = $someString
                    # OPTIONAL
                    password = $someString
                    # OPTIONAL
                    protocol = $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 -Operation 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 -Operation 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
                computeProxySettings = @{
                    # OPTIONAL
                    proxyServer = $someString
                    # OPTIONAL
                    portNumber = $someInt
                    # OPTIONAL
                    username = $someString
                    # OPTIONAL
                    password = $someString
                    # OPTIONAL
                    protocol = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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.
                # OPTIONAL
                objectRecoveryOptions = @{
                    # OPTIONAL
                    servicePrincipalRecoveryOption = @{
                        # REQUIRED
                        recoverLinkedApplication = $someBoolean
                    }
                    # OPTIONAL
                    applicationRecoveryOption = @{
                        # REQUIRED
                        recoverLinkedServicePrincipal = $someBoolean
                    }
                    # OPTIONAL
                    userRecoveryOption = @{
                        # REQUIRED
                        generatePasswords = $someBoolean
                    }
                }
            }
             
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation StartDisableCloudAccountJob
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                # REQUIRED
                cloudAccountIds = @(
                    $someString
                )
                # 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 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                computeProxySettings = @{
                    # OPTIONAL
                    proxyServer = $someString
                    # OPTIONAL
                    portNumber = $someInt
                    # OPTIONAL
                    username = $someString
                    # OPTIONAL
                    password = $someString
                    # OPTIONAL
                    protocol = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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.
                # OPTIONAL
                archivedSnapshotId = $someString
            }
             
            # 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 -Operation 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
                )
                # OPTIONAL
                archivedSnapshotId = $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 -Operation 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 -Operation 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
                )
                # OPTIONAL
                archivedSnapshotId = $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 -Operation 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
              
              
              
              
            PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: AzureO365
            # API Operation: SetupExocompute
             
            $query = New-RscMutationAzureO365 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 14 operations in the 'Cloud Native' API domain: AddSqlServerBackupCredentials, CheckRbaConnectivity, ClearSqlServerBackupCredentials, CreateLabelRule, CreateTagRule, DeleteLabelRule, DeleteTagRule, DownloadFiles, SetupSqlServerBackup, StartSnapshotsIndexJob, UpdateIndexingStatus, UpdateLabelRule, UpdateRootThreatMonitoringEnablement, 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 14 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, UpdateRootThreatMonitoringEnablement, 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">UpdateRootThreatMonitoringEnablement</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                # OPTIONAL
                archivedSnapshotId = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: UpdateRootThreatMonitoringEnablement
             
            $query = New-RscMutationCloudNative -Operation UpdateRootThreatMonitoringEnablement
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                isEnabled = $someBoolean
                # REQUIRED
                rootIds = @(
                    $someString
                )
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateRootThreatMonitoringEnablement 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: UpdateTagRule
             
            $query = New-RscMutationCloudNative -Operation 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 23 operations in the 'Cluster' API domain: AddClusterNodes, AddClusterRoute, AddNodesToCloud, DeleteClusterRoute, DeleteTerminatedClusterOperationJobData, DisconnectExocompute, ExocomputeClusterConnect, GenerateClusterRegistrationToken, MigrateCloudClusterDisks, RecoverCloud, RegisterCloud, ReleasePersistentExo, RemoveCdm, RemoveClusterNodes, ReplaceClusterNode, 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 23 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, DeleteTerminatedClusterOperationJobData, DisconnectExocompute, ExocomputeClusterConnect, GenerateClusterRegistrationToken, MigrateCloudClusterDisks, RecoverCloud, RegisterCloud, ReleasePersistentExo, RemoveCdm, RemoveClusterNodes, ReplaceClusterNode, 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">DeleteTerminatedClusterOperationJobData</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DisconnectExocompute</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExocomputeClusterConnect</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">ReplaceClusterNode</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 -Operation 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
                                }
                            )
                            # OPTIONAL
                            chassisId = $someString
                        }
                    }
                )
                # 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 -Operation 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 -Operation 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 -Operation 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: DeleteTerminatedClusterOperationJobData
             
            $query = New-RscMutationCluster -Operation DeleteTerminatedClusterOperationJobData
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                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: DeleteTerminatedClusterOperationJobDataReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteTerminatedClusterOperationJobData 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: DisconnectExocompute
             
            $query = New-RscMutationCluster -Operation DisconnectExocompute
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                clusterId = $someString
                # REQUIRED
                cloudType = $someCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudType]) 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 DisconnectExocompute 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: ExocomputeClusterConnect
             
            $query = New-RscMutationCluster -Operation ExocomputeClusterConnect
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                clusterName = $someString
                # REQUIRED
                exocomputeConfigId = $someString
                # REQUIRED
                cloudType = $someCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudType]) for enum values.
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: ExocomputeClusterConnectReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExocomputeClusterConnect 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: GenerateClusterRegistrationToken
             
            $query = New-RscMutationCluster -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: MigrateCloudClusterDisks
             
            $query = New-RscMutationCluster -Operation MigrateCloudClusterDisks
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                cloudAccountId = $someString
                # REQUIRED
                vendor = $someCcpVendorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CcpVendorType]) for enum values.
                # REQUIRED
                clusterUuid = $someString
                # OPTIONAL
                batchSize = $someInt
                # OPTIONAL
                newNodeCount = $someInt
            }
             
            # 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: RecoverCloud
             
            $query = New-RscMutationCluster -Operation 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
                    placementGroupName = $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 11 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: RegisterCloud
             
            $query = New-RscMutationCluster -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: ReleasePersistentExo
             
            $query = New-RscMutationCluster -Operation 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 13 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: RemoveCdm
             
            $query = New-RscMutationCluster -Operation 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 14 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: RemoveClusterNodes
             
            $query = New-RscMutationCluster -Operation 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
                    }
                )
                # OPTIONAL
                resetAfterRemoveType = $someResetAfterRemoveType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ResetAfterRemoveType]) 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 RemoveClusterNodes 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: ReplaceClusterNode
             
            $query = New-RscMutationCluster -Operation ReplaceClusterNode
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                newNodeId = $someString
                # OPTIONAL
                ipmiPassword = $someString
                # REQUIRED
                clusterUuid = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: ReplaceClusterNodeReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ReplaceClusterNode 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: RequestPersistentExo
             
            $query = New-RscMutationCluster -Operation 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 17 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: SetMissingClusterStatus
             
            $query = New-RscMutationCluster -Operation 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 18 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: UpdateClusterDefaultAddress
             
            $query = New-RscMutationCluster -Operation 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 19 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: UpdateClusterLocation
             
            $query = New-RscMutationCluster -Operation 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 20 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: UpdateClusterNtpServers
             
            $query = New-RscMutationCluster -Operation 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 21 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: UpdateClusterPauseStatus
             
            $query = New-RscMutationCluster -Operation 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 22 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: UpdateClusterSettings
             
            $query = New-RscMutationCluster -Operation 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 23 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: UpdatePreviewerClusterConfig
             
            $query = New-RscMutationCluster -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 20 operations in the 'Report Download' API domain: ActiveDirectorySnapshotFromLocation, AuditLogCsvAsync, CdmTprConfigurationAsync, 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 20 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, CdmTprConfigurationAsync, 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">CdmTprConfigurationAsync</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 -Operation 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 -Operation 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: CdmTprConfigurationAsync
             
            $query = New-RscMutationDownload -Operation CdmTprConfigurationAsync
             
            # No variables for this query.
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: DownloadCdmTprConfigAsyncReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CdmTprConfigurationAsync 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: ExchangeSnapshot
             
            $query = New-RscMutationDownload -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: ExchangeSnapshotV2
             
            $query = New-RscMutationDownload -Operation 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 6 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: FilesetSnapshot
             
            $query = New-RscMutationDownload -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: FilesetSnapshotFromLocation
             
            $query = New-RscMutationDownload -Operation 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 8 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: FromArchiveV2
             
            $query = New-RscMutationDownload -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: ObjectFilesCsv
             
            $query = New-RscMutationDownload -Operation 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: ObjectsListCsv
             
            $query = New-RscMutationDownload -Operation 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 11 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: ReportCsvAsync
             
            $query = New-RscMutationDownload -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: ReportPdfAsync
             
            $query = New-RscMutationDownload -Operation 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 13 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: ResultsCsv
             
            $query = New-RscMutationDownload -Operation ResultsCsv
             
            # REQUIRED
            $query.Var.crawlId = $someString
            # OPTIONAL
            $query.Var.downloadFilter = @{
                # OPTIONAL
                analyzerGroupIds = @(
                    $someString
                )
                # OPTIONAL
                browseDirectorySnappablePath = @{
                    # OPTIONAL
                    snappableFid = $someString
                    # OPTIONAL
                    stdPath = $someString
                    # OPTIONAL
                    mode = $someDataGovFileMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovFileMode]) for enum values.
                }
                # OPTIONAL
                listFileResultsSnappablePaths = @(
                    @{
                        # OPTIONAL
                        snappableFid = $someString
                        # OPTIONAL
                        stdPath = $someString
                        # OPTIONAL
                        mode = $someDataGovFileMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovFileMode]) for enum values.
                    }
                )
                # OPTIONAL
                listFileResultsSnappableTypes = @(
                    $someString
                )
                # OPTIONAL
                listFileResultsSearchText = $someString
                # OPTIONAL
                whitelistEnabled = $someBoolean
                # OPTIONAL
                policyViolationId = $someString
                # 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 14 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: SapHanaSnapshot
             
            $query = New-RscMutationDownload -Operation 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 15 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: SapHanaSnapshotFromLocation
             
            $query = New-RscMutationDownload -Operation 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 16 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: SapHanaSnapshotsForPointInTimeRecovery
             
            $query = New-RscMutationDownload -Operation 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 17 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: SnapshotResultsCsv
             
            $query = New-RscMutationDownload -Operation 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
                    mode = $someDataGovFileMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovFileMode]) for enum values.
                }
                # OPTIONAL
                listFileResultsSnappablePaths = @(
                    @{
                        # OPTIONAL
                        snappableFid = $someString
                        # OPTIONAL
                        stdPath = $someString
                        # OPTIONAL
                        mode = $someDataGovFileMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataGovFileMode]) for enum values.
                    }
                )
                # OPTIONAL
                listFileResultsSnappableTypes = @(
                    $someString
                )
                # OPTIONAL
                listFileResultsSearchText = $someString
                # OPTIONAL
                whitelistEnabled = $someBoolean
                # OPTIONAL
                policyViolationId = $someString
                # 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 18 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: ThreatHuntCsv
             
            $query = New-RscMutationDownload -Operation 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 19 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: VolumeGroupSnapshotFiles
             
            $query = New-RscMutationDownload -Operation 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 20 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Download
            # API Operation: VolumeGroupSnapshotFromLocation
             
            $query = New-RscMutationDownload -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 7 operations in the 'Fileset' API domain: BulkCreate, BulkCreateTemplates, BulkDelete, BulkDeleteTemplate, BulkUpdateTemplate, RecoverFiles, or Update.</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 7 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, RecoverFiles, 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-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: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: Fileset
            # API Operation: BulkCreate
             
            $query = New-RscMutationFileset -Operation 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 -Operation 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
                        shouldRetryPrescriptIfBackupFails = $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 -Operation 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 -Operation 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 -Operation 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
                        shouldRetryPrescriptIfBackupFails = $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 -Operation 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:example>
        <maml:title>-------------------------- Example 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Fileset
            # API Operation: Update
             
            $query = New-RscMutationFileset -Operation Update
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                filesetUpdateProperties = @{
                    # OPTIONAL
                    configuredSlaDomainId = $someString
                    # OPTIONAL
                    forceFull = $someBoolean
                    # OPTIONAL
                    forceFullPartitionIds = @(
                        $someInt
                    )
                    # OPTIONAL
                    snapMirrorLabelForFullBackup = $someString
                    # OPTIONAL
                    snapMirrorLabelForIncrementalBackup = $someString
                }
                # REQUIRED
                id = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: FilesetDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the Update 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 -Operation 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 -Operation CloudAccountAddProjects
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                sessionId = $someString
                # REQUIRED
                nativeProtectionProjectIds = @(
                    $someString
                )
                # REQUIRED
                sharedVpcHostProjectIds = @(
                    $someString
                )
                # REQUIRED
                cloudAccountsProjectIds = @(
                    $someString
                )
                # OPTIONAL
                projectIds = @(
                    $someString
                )
                # OPTIONAL
                featuresWithPermissionGroups = @(
                    @{
                        # 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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation CloudAccountUpgradeProjects
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                sessionId = $someString
                # REQUIRED
                projectIds = @(
                    $someString
                )
                # OPTIONAL
                feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                # OPTIONAL
                featuresWithPermissionGroups = @(
                    @{
                        # 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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                # OPTIONAL
                targetGcpProjectRubrikId = $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 -Operation 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
                # OPTIONAL
                targetGcpProjectRubrikId = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                        oracleSddWalletPath = $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
                        }
                        # OPTIONAL
                        oracleSddUserCredentials = @{
                            # REQUIRED
                            password = $someString
                            # REQUIRED
                            username = $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 -Operation 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
                        oracleSddWalletPath = $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
                        }
                        # OPTIONAL
                        oracleSddUserCredentials = @{
                            # REQUIRED
                            password = $someString
                            # REQUIRED
                            username = $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 -Operation 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
                            oracleSddWalletPath = $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
                            }
                            # OPTIONAL
                            oracleSddUserCredentials = @{
                                # REQUIRED
                                password = $someString
                                # REQUIRED
                                username = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation RestoreVirtualMachineSnapshotFiles
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # OPTIONAL
                    targetVirtualMachineId = $someString
                    # OPTIONAL
                    shouldIgnoreError = $someBoolean
                    # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                    }
                    # OPTIONAL
                    okta = @{
                        # REQUIRED
                        oktaTenantUrl = $someString
                    }
                    # OPTIONAL
                    microsoftPurview = @{
                        # REQUIRED
                        tenantId = $someString
                        # REQUIRED
                        o365OrgId = $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 -Operation 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
                            }
                            # OPTIONAL
                            okta = @{
                                # REQUIRED
                                oktaTenantUrl = $someString
                            }
                            # OPTIONAL
                            microsoftPurview = @{
                                # REQUIRED
                                tenantId = $someString
                                # REQUIRED
                                o365OrgId = $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 -Operation 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 -Operation 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 -Operation 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
                    }
                    # OPTIONAL
                    okta = @{
                        # REQUIRED
                        oktaTenantUrl = $someString
                    }
                    # OPTIONAL
                    microsoftPurview = @{
                        # REQUIRED
                        tenantId = $someString
                        # REQUIRED
                        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 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 -Operation 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
                            }
                            # OPTIONAL
                            okta = @{
                                # REQUIRED
                                oktaTenantUrl = $someString
                            }
                            # OPTIONAL
                            microsoftPurview = @{
                                # REQUIRED
                                tenantId = $someString
                                # REQUIRED
                                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 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 18 operations in the 'Kubernetes' API domain: AddCluster, AddProtectionSet, ArchiveCluster, CreateAgentManifest, CreateCluster, CreateNamespaceSnapshots, CreateProtectionSetSnapshot, DeleteCluster, DeleteProtectionSet, DownloadSnapshotFromLocation, 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 18 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, DownloadSnapshotFromLocation, 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">DownloadSnapshotFromLocation</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: DownloadSnapshotFromLocation
             
            $query = New-RscMutationK8s -Operation 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 '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: ExportNamespace
             
            $query = New-RscMutationK8s -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: K8s
            # API Operation: ExportProtectionSetSnapshot
             
            $query = New-RscMutationK8s -Operation ExportProtectionSetSnapshot
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                id = $someString
                # REQUIRED
                jobConfig = @{
                    # OPTIONAL
                    filter = $someString
                    # OPTIONAL
                    pvcNames = @(
                        $someString
                    )
                    # OPTIONAL
                    virtualMachineRunStrategy = $someString
                    # OPTIONAL
                    shouldDeleteNamespaceIfExportFailed = $someBoolean
                    # OPTIONAL
                    ignoreErrors = $someBoolean
                    # OPTIONAL
                    shouldKeepVirtualMachineMacAddresses = $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 13 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: K8s
            # API Operation: RefreshCluster
             
            $query = New-RscMutationK8s -Operation 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 14 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: K8s
            # API Operation: RefreshV2Cluster
             
            $query = New-RscMutationK8s -Operation 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 15 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: K8s
            # API Operation: RestoreNamespace
             
            $query = New-RscMutationK8s -Operation 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 16 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: K8s
            # API Operation: RestoreProtectionSetSnapshot
             
            $query = New-RscMutationK8s -Operation 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 17 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: K8s
            # API Operation: UpdateCluster
             
            $query = New-RscMutationK8s -Operation 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 18 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: K8s
            # API Operation: UpdateProtectionSet
             
            $query = New-RscMutationK8s -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation BackupMailbox
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                workloadUuids = @(
                    $someString
                )
                # OPTIONAL
                retentionSlaId = $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 -Operation BackupOnedrive
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                workloadUuids = @(
                    $someString
                )
                # OPTIONAL
                retentionSlaId = $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 -Operation 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 -Operation BackupTeam
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                workloadUuids = @(
                    $someString
                )
                # OPTIONAL
                retentionSlaId = $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 -Operation 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
                            )
                            # OPTIONAL
                            nfsSettings = @{
                                # OPTIONAL
                                version = $someManagedVolumeNFSVersion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeNFSVersion]) for enum values.
                            }
                        }
                    }
                    # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                            )
                            # OPTIONAL
                            nfsSettings = @{
                                # OPTIONAL
                                version = $someManagedVolumeNFSVersion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeNFSVersion]) 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 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 -Operation 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 -Operation 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 -Operation 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
                        nfsSettings = @{
                            # OPTIONAL
                            version = $someManagedVolumeNFSVersion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeNFSVersion]) for enum values.
                        }
                    }
                    # 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 149 operations in the 'Miscellaneous' API domain: AddAdGroupsToHierarchy, AddConfiguredGroupToHierarchy, AddCustomIntelFeed, AddInventoryWorkloads, AddRoleAssignments, AddVlan, AddVmAppConsistentSpecs, AirGapStatus, ApproveTprRequest, ArchiveCrawl, AssignProtection, BatchDeassignRoleFromUserGroups, BulkCreateNasFilesets, BulkUpdateNasNamespaces, CancelDownloadPackage, CancelScheduledUpgrade, CancelTaskchain, CancelTprRequest, ChangePassword, CreateCustomAnalyzer, CreateDistributionListDigestBatch, CreateEventDigestBatch, CreateGuestCredential, CreateLegalHold, CreateOnDemandVolumeGroupBackup, CreateVappsInstantRecovery, DeactivateCustomAnalyzer, DeleteAdGroupsFromHierarchy, DeleteDistributionListDigestBatch, DeleteEventDigest, DeleteGuestCredentialById, DeleteIntelFeed, DeleteVolumeGroupMount, DenyTprRequests, DeregisterPrivateContainerRegistry, DisableSupportUserAccess, DisableTprOrg, DissolveLegalHold, EnableAutomaticFmdUpload, EnableDisableAppConsistency, EnableSupportUserAccess, EnableTprOrg, ExcludeVmDisks, ExecuteTprRequests, ExpireSnoozedDirectories, GenerateConfigProtectionRestoreForm, GenerateSupportBundle, GetDownloadUrl, HideRevealNasNamespaces, InstallIoFilter, InviteSsoGroup, ListCidrsForComputeSetting, LockUsersByAdmin, LogoutFromRubrikSupportPortal, MakePrimary, ManageProtectionForLinkedObjects, ModifyDistributionListDigestBatch, ModifyEventDigestBatch, ModifyIpmi, MountDisk, NotificationForGetLicense, RecoverCloudDirectMultiPaths, RecoverCloudDirectNasShare, RecoverCloudDirectPath, RefreshDomain, RefreshGlobalManagerConnectivityStatus, RemoveDisk, RemoveInventoryWorkloads, RemoveNodeForReplacement, RemovePrivateEndpointList, RemoveProxyConfig, RemoveVlans, ReseedLogShippingSecondary, ResetAllOrgUsersPasswords, ResetUsersPasswordsWithUserIds, ResizeDisk, ResolveAnomaly, ResolveVolumeGroupsConflict, RestoreObjectsDryRun, 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, SubmitTprRequest, SupportPortalLogin, SwitchProductToOnboardingMode, TriggerCloudComputeConnectivityCheck, TriggerExocomputeHealthCheck, UninstallIoFilter, UnlockUsersByAdmin, UnmountDisk, UpdateAccountOwner, UpdateAdGroup, UpdateAgentDeploymentSetting, UpdateAgentDeploymentSettingInBatch, UpdateAgentDeploymentSettingInBatchNew, UpdateAuthDomainUsersHiddenStatus, UpdateBackupThrottleSetting, UpdateBadDiskLedStatus, UpdateConfiguredGroup, UpdateCustomAnalyzer, UpdateCustomIntelFeed, UpdateCustomerAppPermissions, UpdateDistributionListDigest, UpdateDnsServersAndSearchDomains, UpdateEventDigest, UpdateFloatingIps, UpdateGuestCredential, UpdateInsightState, UpdateIocStatus, UpdateIpWhitelist, UpdateLambdaSettings, UpdateLockoutConfig, UpdateManagedIdentities, UpdateNetworkThrottle, UpdateProxyConfig, UpdateRoleAssignments, UpdateSupportUserAccess, UpdateTprConfiguration, 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 149 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, ApproveTprRequest, ArchiveCrawl, AssignProtection, BatchDeassignRoleFromUserGroups, BulkCreateNasFilesets, BulkUpdateNasNamespaces, CancelDownloadPackage, CancelScheduledUpgrade, CancelTaskchain, CancelTprRequest, ChangePassword, CreateCustomAnalyzer, CreateDistributionListDigestBatch, CreateEventDigestBatch, CreateGuestCredential, CreateLegalHold, CreateOnDemandVolumeGroupBackup, CreateVappsInstantRecovery, DeactivateCustomAnalyzer, DeleteAdGroupsFromHierarchy, DeleteDistributionListDigestBatch, DeleteEventDigest, DeleteGuestCredentialById, DeleteIntelFeed, DeleteVolumeGroupMount, DenyTprRequests, DeregisterPrivateContainerRegistry, DisableSupportUserAccess, DisableTprOrg, DissolveLegalHold, EnableAutomaticFmdUpload, EnableDisableAppConsistency, EnableSupportUserAccess, EnableTprOrg, ExcludeVmDisks, ExecuteTprRequests, ExpireSnoozedDirectories, GenerateConfigProtectionRestoreForm, GenerateSupportBundle, GetDownloadUrl, HideRevealNasNamespaces, InstallIoFilter, InviteSsoGroup, ListCidrsForComputeSetting, LockUsersByAdmin, LogoutFromRubrikSupportPortal, MakePrimary, ManageProtectionForLinkedObjects, ModifyDistributionListDigestBatch, ModifyEventDigestBatch, ModifyIpmi, MountDisk, NotificationForGetLicense, RecoverCloudDirectMultiPaths, RecoverCloudDirectNasShare, RecoverCloudDirectPath, RefreshDomain, RefreshGlobalManagerConnectivityStatus, RemoveDisk, RemoveInventoryWorkloads, RemoveNodeForReplacement, RemovePrivateEndpointList, RemoveProxyConfig, RemoveVlans, ReseedLogShippingSecondary, ResetAllOrgUsersPasswords, ResetUsersPasswordsWithUserIds, ResizeDisk, ResolveAnomaly, ResolveVolumeGroupsConflict, RestoreObjectsDryRun, 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, SubmitTprRequest, SupportPortalLogin, SwitchProductToOnboardingMode, TriggerCloudComputeConnectivityCheck, TriggerExocomputeHealthCheck, UninstallIoFilter, UnlockUsersByAdmin, UnmountDisk, UpdateAccountOwner, UpdateAdGroup, UpdateAgentDeploymentSetting, UpdateAgentDeploymentSettingInBatch, UpdateAgentDeploymentSettingInBatchNew, UpdateAuthDomainUsersHiddenStatus, UpdateBackupThrottleSetting, UpdateBadDiskLedStatus, UpdateConfiguredGroup, UpdateCustomAnalyzer, UpdateCustomIntelFeed, UpdateCustomerAppPermissions, UpdateDistributionListDigest, UpdateDnsServersAndSearchDomains, UpdateEventDigest, UpdateFloatingIps, UpdateGuestCredential, UpdateInsightState, UpdateIocStatus, UpdateIpWhitelist, UpdateLambdaSettings, UpdateLockoutConfig, UpdateManagedIdentities, UpdateNetworkThrottle, UpdateProxyConfig, UpdateRoleAssignments, UpdateSupportUserAccess, UpdateTprConfiguration, 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">ApproveTprRequest</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">BulkUpdateNasNamespaces</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">CancelTprRequest</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">CreateDistributionListDigestBatch</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">DenyTprRequests</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">DisableTprOrg</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">EnableTprOrg</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExcludeVmDisks</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">ExecuteTprRequests</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">ModifyDistributionListDigestBatch</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">RecoverCloudDirectNasShare</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">RemoveNodeForReplacement</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">RestoreObjectsDryRun</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">SubmitTprRequest</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">UpdateAgentDeploymentSettingInBatchNew</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">UpdateTprConfiguration</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: ApproveTprRequest
             
            $query = New-RscMutationMisc -Operation ApproveTprRequest
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                requestId = $someString
                # OPTIONAL
                comment = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ApproveTprRequest 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: ArchiveCrawl
             
            $query = New-RscMutationMisc -Operation 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 11 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: AssignProtection
             
            $query = New-RscMutationMisc -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: BatchDeassignRoleFromUserGroups
             
            $query = New-RscMutationMisc -Operation 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 13 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: BulkCreateNasFilesets
             
            $query = New-RscMutationMisc -Operation 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
                        shouldRetryPrescriptIfBackupFails = $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 14 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: BulkUpdateNasNamespaces
             
            $query = New-RscMutationMisc -Operation BulkUpdateNasNamespaces
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                bulkUpdateNasNamespacesRequest = @{
                    # REQUIRED
                    nasNamespaces = @(
                        @{
                            # REQUIRED
                            id = $someString
                            # OPTIONAL
                            smbCredentials = @{
                                # OPTIONAL
                                password = $someString
                                # REQUIRED
                                username = $someString
                            }
                        }
                    )
                }
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkUpdateNasNamespaces 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: CancelDownloadPackage
             
            $query = New-RscMutationMisc -Operation 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 16 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CancelScheduledUpgrade
             
            $query = New-RscMutationMisc -Operation 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 17 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CancelTaskchain
             
            $query = New-RscMutationMisc -Operation 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 18 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CancelTprRequest
             
            $query = New-RscMutationMisc -Operation CancelTprRequest
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                requestIds = @(
                    $someString
                )
                # OPTIONAL
                comment = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the CancelTprRequest 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: ChangePassword
             
            $query = New-RscMutationMisc -Operation 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 20 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CreateCustomAnalyzer
             
            $query = New-RscMutationMisc -Operation 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
                ruleTypes = @(
                    $someAnalyzerRuleType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerRuleType]) for enum values.
                )
                # OPTIONAL
                keyRegex = $someString
                # OPTIONAL
                structuredValueRegex = $someString
                # OPTIONAL
                structuredDictionaryCsv = $someString
                # OPTIONAL
                structuredDictionary = @(
                    $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: 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 21 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CreateDistributionListDigestBatch
             
            $query = New-RscMutationMisc -Operation CreateDistributionListDigestBatch
             
            # 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 CreateDistributionListDigestBatch 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: CreateEventDigestBatch
             
            $query = New-RscMutationMisc -Operation 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 23 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CreateGuestCredential
             
            $query = New-RscMutationMisc -Operation 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 24 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CreateLegalHold
             
            $query = New-RscMutationMisc -Operation 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 25 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CreateOnDemandVolumeGroupBackup
             
            $query = New-RscMutationMisc -Operation 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 26 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CreateVappsInstantRecovery
             
            $query = New-RscMutationMisc -Operation 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 27 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeactivateCustomAnalyzer
             
            $query = New-RscMutationMisc -Operation 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 28 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeleteAdGroupsFromHierarchy
             
            $query = New-RscMutationMisc -Operation 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 29 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeleteDistributionListDigestBatch
             
            $query = New-RscMutationMisc -Operation 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 30 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeleteEventDigest
             
            $query = New-RscMutationMisc -Operation 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 31 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeleteGuestCredentialById
             
            $query = New-RscMutationMisc -Operation 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 32 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeleteIntelFeed
             
            $query = New-RscMutationMisc -Operation 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 33 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeleteVolumeGroupMount
             
            $query = New-RscMutationMisc -Operation 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 34 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DenyTprRequests
             
            $query = New-RscMutationMisc -Operation DenyTprRequests
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                requestIds = @(
                    $someString
                )
                # OPTIONAL
                comment = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DenyTprRequests 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: DeregisterPrivateContainerRegistry
             
            $query = New-RscMutationMisc -Operation 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 36 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DisableSupportUserAccess
             
            $query = New-RscMutationMisc -Operation 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 37 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DisableTprOrg
             
            $query = New-RscMutationMisc -Operation DisableTprOrg
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                organizationId = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DisableTprOrg 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: DissolveLegalHold
             
            $query = New-RscMutationMisc -Operation 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 39 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: EnableAutomaticFmdUpload
             
            $query = New-RscMutationMisc -Operation 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 40 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: EnableDisableAppConsistency
             
            $query = New-RscMutationMisc -Operation 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 41 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: EnableSupportUserAccess
             
            $query = New-RscMutationMisc -Operation 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 42 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: EnableTprOrg
             
            $query = New-RscMutationMisc -Operation EnableTprOrg
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                organizationId = $someString
                # REQUIRED
                newTprAdminEmail = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the EnableTprOrg 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: ExcludeVmDisks
             
            $query = New-RscMutationMisc -Operation 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 44 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ExecuteTprRequests
             
            $query = New-RscMutationMisc -Operation ExecuteTprRequests
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                requestIds = @(
                    $someString
                )
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExecuteTprRequests 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: ExpireSnoozedDirectories
             
            $query = New-RscMutationMisc -Operation 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 46 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GenerateConfigProtectionRestoreForm
             
            $query = New-RscMutationMisc -Operation 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 47 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GenerateSupportBundle
             
            $query = New-RscMutationMisc -Operation 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 48 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetDownloadUrl
             
            $query = New-RscMutationMisc -Operation 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 49 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: HideRevealNasNamespaces
             
            $query = New-RscMutationMisc -Operation 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 50 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: InstallIoFilter
             
            $query = New-RscMutationMisc -Operation 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 51 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: InviteSsoGroup
             
            $query = New-RscMutationMisc -Operation InviteSsoGroup
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                groupName = $someString
                # REQUIRED
                roleIds = @(
                    $someString
                )
                # OPTIONAL
                authDomainId = $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 52 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ListCidrsForComputeSetting
             
            $query = New-RscMutationMisc -Operation 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 53 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: LockUsersByAdmin
             
            $query = New-RscMutationMisc -Operation 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 54 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: LogoutFromRubrikSupportPortal
             
            $query = New-RscMutationMisc -Operation 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 55 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: MakePrimary
             
            $query = New-RscMutationMisc -Operation 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 56 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ManageProtectionForLinkedObjects
             
            $query = New-RscMutationMisc -Operation 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 57 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ModifyDistributionListDigestBatch
             
            $query = New-RscMutationMisc -Operation ModifyDistributionListDigestBatch
             
            # 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 ModifyDistributionListDigestBatch 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: ModifyEventDigestBatch
             
            $query = New-RscMutationMisc -Operation 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 59 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ModifyIpmi
             
            $query = New-RscMutationMisc -Operation 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 60 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: MountDisk
             
            $query = New-RscMutationMisc -Operation 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
                )
                # OPTIONAL
                archivedSnapshotId = $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 61 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: NotificationForGetLicense
             
            $query = New-RscMutationMisc -Operation 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 62 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RecoverCloudDirectMultiPaths
             
            $query = New-RscMutationMisc -Operation RecoverCloudDirectMultiPaths
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                snapshotFid = $someString
                # REQUIRED
                restorePathPairList = @(
                    @{
                        # REQUIRED
                        srcPath = $someString
                        # REQUIRED
                        dstPath = $someString
                    }
                )
                # OPTIONAL
                dstExportId = $someInt
                # OPTIONAL
                dstExportFid = $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 63 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RecoverCloudDirectNasShare
             
            $query = New-RscMutationMisc -Operation RecoverCloudDirectNasShare
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                srcShareName = $someString
                # REQUIRED
                snapshotFid = $someString
                # REQUIRED
                restorePathPairList = @(
                    @{
                        # REQUIRED
                        srcPath = $someString
                        # REQUIRED
                        dstPath = $someString
                    }
                )
                # OPTIONAL
                destShareFid = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the RecoverCloudDirectNasShare 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: RecoverCloudDirectPath
             
            $query = New-RscMutationMisc -Operation 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 65 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RefreshDomain
             
            $query = New-RscMutationMisc -Operation 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 66 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RefreshGlobalManagerConnectivityStatus
             
            $query = New-RscMutationMisc -Operation 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 67 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RemoveDisk
             
            $query = New-RscMutationMisc -Operation 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 68 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RemoveInventoryWorkloads
             
            $query = New-RscMutationMisc -Operation 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 69 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RemoveNodeForReplacement
             
            $query = New-RscMutationMisc -Operation RemoveNodeForReplacement
             
            # 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: RemoveNodeForReplacementReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RemoveNodeForReplacement 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: RemovePrivateEndpointList
             
            $query = New-RscMutationMisc -Operation 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 71 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RemoveProxyConfig
             
            $query = New-RscMutationMisc -Operation 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 72 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RemoveVlans
             
            $query = New-RscMutationMisc -Operation 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 73 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ReseedLogShippingSecondary
             
            $query = New-RscMutationMisc -Operation 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 74 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ResetAllOrgUsersPasswords
             
            $query = New-RscMutationMisc -Operation 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 75 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ResetUsersPasswordsWithUserIds
             
            $query = New-RscMutationMisc -Operation ResetUsersPasswordsWithUserIds
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                userIds = @(
                    $someString
                )
                # REQUIRED
                invalidateAllSessions = $someBoolean
            }
             
            # 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 76 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ResizeDisk
             
            $query = New-RscMutationMisc -Operation 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 77 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ResolveAnomaly
             
            $query = New-RscMutationMisc -Operation 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 78 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ResolveVolumeGroupsConflict
             
            $query = New-RscMutationMisc -Operation 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 79 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RestoreObjectsDryRun
             
            $query = New-RscMutationMisc -Operation RestoreObjectsDryRun
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                exportId = $someString
                # OPTIONAL
                shouldReportOnlyChangedValues = $someBoolean
                # OPTIONAL
                shouldReportOnlyChangedAttrs = $someBoolean
                # 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
                # REQUIRED
                instanceId = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: RestoreObjectsDryRunReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreObjectsDryRun 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: RetryBackup
             
            $query = New-RscMutationMisc -Operation 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 81 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RetryDownloadPackageJob
             
            $query = New-RscMutationMisc -Operation 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 82 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RevokeAllOrgRoles
             
            $query = New-RscMutationMisc -Operation 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 83 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: RunCustomAnalyzer
             
            $query = New-RscMutationMisc -Operation 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 84 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ScheduleUpgradeBatchJob
             
            $query = New-RscMutationMisc -Operation 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 85 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetAnalyzerRisks
             
            $query = New-RscMutationMisc -Operation 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 86 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetBundleApprovalStatus
             
            $query = New-RscMutationMisc -Operation 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 87 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetCustomerTags
             
            $query = New-RscMutationMisc -Operation 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 88 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetDatastoreFreespaceThresholds
             
            $query = New-RscMutationMisc -Operation 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 89 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetIpWhitelistEnabled
             
            $query = New-RscMutationMisc -Operation 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 90 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetMfaSetting
             
            $query = New-RscMutationMisc -Operation 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 91 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetPrivateContainerRegistry
             
            $query = New-RscMutationMisc -Operation SetPrivateContainerRegistry
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                exocomputeAccountId = $someString
                # REQUIRED
                registryUrl = $someString
                # OPTIONAL
                cloudType = $someCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudType]) for enum values.
                # OPTIONAL
                pcrAwsImagePullDetails = @{
                    # OPTIONAL
                    awsNativeId = $someString
                }
                # OPTIONAL
                pcrAzureImagePullDetails = @{
                    # OPTIONAL
                    customerAppId = $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 92 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetTotpConfig
             
            $query = New-RscMutationMisc -Operation 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 93 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetUpgradeType
             
            $query = New-RscMutationMisc -Operation 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 94 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetUserLevelTotpEnforcement
             
            $query = New-RscMutationMisc -Operation 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 95 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetWorkloadAlertSetting
             
            $query = New-RscMutationMisc -Operation 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 96 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SetupDisk
             
            $query = New-RscMutationMisc -Operation 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 97 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StartCrawl
             
            $query = New-RscMutationMisc -Operation 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
                            ruleTypes = @(
                                $someAnalyzerRuleType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerRuleType]) for enum values.
                            )
                            # OPTIONAL
                            keyRegex = $someString
                            # OPTIONAL
                            structuredValueRegex = $someString
                            # OPTIONAL
                            structuredDictionaryCsv = $someString
                            # OPTIONAL
                            structuredDictionary = @(
                                $someString
                            )
                            # 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 98 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StartDownloadPackageBatchJob
             
            $query = New-RscMutationMisc -Operation 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 99 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StartExportRdsInstanceJob
             
            $query = New-RscMutationMisc -Operation 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 100 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StartPeriodicUpgradePrechecksOnDemandJob
             
            $query = New-RscMutationMisc -Operation 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 101 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StartUpgradeBatchJob
             
            $query = New-RscMutationMisc -Operation 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 102 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StartVolumeGroupMount
             
            $query = New-RscMutationMisc -Operation 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 103 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StopJobInstance
             
            $query = New-RscMutationMisc -Operation 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 104 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: StopJobInstanceFromEventSeries
             
            $query = New-RscMutationMisc -Operation 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 105 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SubmitTprRequest
             
            $query = New-RscMutationMisc -Operation SubmitTprRequest
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                requestId = $someString
                # OPTIONAL
                comment = $someString
                # REQUIRED
                executionType = $someTprExecutionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TprExecutionType]) for enum values.
                # OPTIONAL
                executionTimeoutHours = $someInt
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the SubmitTprRequest 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: SupportPortalLogin
             
            $query = New-RscMutationMisc -Operation 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 107 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: SwitchProductToOnboardingMode
             
            $query = New-RscMutationMisc -Operation 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 108 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: TriggerCloudComputeConnectivityCheck
             
            $query = New-RscMutationMisc -Operation 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 109 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: TriggerExocomputeHealthCheck
             
            $query = New-RscMutationMisc -Operation 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 110 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UninstallIoFilter
             
            $query = New-RscMutationMisc -Operation 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 111 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UnlockUsersByAdmin
             
            $query = New-RscMutationMisc -Operation 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 112 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UnmountDisk
             
            $query = New-RscMutationMisc -Operation 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 113 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateAccountOwner
             
            $query = New-RscMutationMisc -Operation 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 114 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateAdGroup
             
            $query = New-RscMutationMisc -Operation 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 115 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateAgentDeploymentSetting
             
            $query = New-RscMutationMisc -Operation UpdateAgentDeploymentSetting
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                clusterUuid = $someString
                # REQUIRED
                settings = @{
                    # OPTIONAL
                    guestCredentialId = $someString
                    # 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 116 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateAgentDeploymentSettingInBatch
             
            $query = New-RscMutationMisc -Operation UpdateAgentDeploymentSettingInBatch
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                requests = @(
                    @{
                        # REQUIRED
                        clusterUuid = $someString
                        # REQUIRED
                        settings = @{
                            # OPTIONAL
                            guestCredentialId = $someString
                            # 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 117 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateAgentDeploymentSettingInBatchNew
             
            $query = New-RscMutationMisc -Operation UpdateAgentDeploymentSettingInBatchNew
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                requests = @(
                    @{
                        # OPTIONAL
                        settings = @{
                            # OPTIONAL
                            guestCredential = @{
                                # OPTIONAL
                                domain = $someString
                                # OPTIONAL
                                description = $someString
                                # OPTIONAL
                                baseGuestCredential = @{
                                    # REQUIRED
                                    password = $someString
                                    # REQUIRED
                                    username = $someString
                                }
                            }
                            # OPTIONAL
                            guestCredentialId = $someString
                            # REQUIRED
                            isAutomatic = $someBoolean
                        }
                        # REQUIRED
                        clusterUuid = $someString
                    }
                )
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: UpdateAgentDeploymentSettingInBatchNewReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateAgentDeploymentSettingInBatchNew 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: UpdateAuthDomainUsersHiddenStatus
             
            $query = New-RscMutationMisc -Operation 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 119 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateBackupThrottleSetting
             
            $query = New-RscMutationMisc -Operation 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 120 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateBadDiskLedStatus
             
            $query = New-RscMutationMisc -Operation 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 121 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateConfiguredGroup
             
            $query = New-RscMutationMisc -Operation 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 122 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateCustomAnalyzer
             
            $query = New-RscMutationMisc -Operation 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
                ruleTypes = @(
                    $someAnalyzerRuleType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerRuleType]) for enum values.
                )
                # OPTIONAL
                keyRegex = $someString
                # OPTIONAL
                structuredValueRegex = $someString
                # OPTIONAL
                structuredDictionaryCsv = $someString
                # OPTIONAL
                structuredDictionary = @(
                    $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: 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 123 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateCustomIntelFeed
             
            $query = New-RscMutationMisc -Operation 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 124 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateCustomerAppPermissions
             
            $query = New-RscMutationMisc -Operation 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 125 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateDistributionListDigest
             
            $query = New-RscMutationMisc -Operation 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 126 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateDnsServersAndSearchDomains
             
            $query = New-RscMutationMisc -Operation 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 127 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateEventDigest
             
            $query = New-RscMutationMisc -Operation 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 128 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateFloatingIps
             
            $query = New-RscMutationMisc -Operation 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 129 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateGuestCredential
             
            $query = New-RscMutationMisc -Operation 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 130 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateInsightState
             
            $query = New-RscMutationMisc -Operation 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 131 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateIocStatus
             
            $query = New-RscMutationMisc -Operation 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 132 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateIpWhitelist
             
            $query = New-RscMutationMisc -Operation 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 133 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateLambdaSettings
             
            $query = New-RscMutationMisc -Operation 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 134 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateLockoutConfig
             
            $query = New-RscMutationMisc -Operation 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 135 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateManagedIdentities
             
            $query = New-RscMutationMisc -Operation 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 136 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateNetworkThrottle
             
            $query = New-RscMutationMisc -Operation 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 137 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateProxyConfig
             
            $query = New-RscMutationMisc -Operation 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 138 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateRoleAssignments
             
            $query = New-RscMutationMisc -Operation 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 139 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateSupportUserAccess
             
            $query = New-RscMutationMisc -Operation 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 140 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateTprConfiguration
             
            $query = New-RscMutationMisc -Operation UpdateTprConfiguration
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                organizationId = $someString
                # OPTIONAL
                executionMaxTimeoutHours = $someInt
                # OPTIONAL
                requestTimeoutHours = $someInt
                # OPTIONAL
                reminderHours = $someInt
                # OPTIONAL
                staticQuorumApprovalsRequirement = $someInt
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTprConfiguration operation of the 'Miscellaneous' API domain.</maml:para>
        </dev:remarks>
      </command:example>
      <command:example>
        <maml:title>------------------------- Example 141 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateTunnelStatus
             
            $query = New-RscMutationMisc -Operation 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 142 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateVlan
             
            $query = New-RscMutationMisc -Operation 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 143 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateVolumeGroup
             
            $query = New-RscMutationMisc -Operation 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 144 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpdateWhitelistedAnalyzers
             
            $query = New-RscMutationMisc -Operation 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 145 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpgradeIoFilter
             
            $query = New-RscMutationMisc -Operation 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 146 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: UpgradeToRsc
             
            $query = New-RscMutationMisc -Operation 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 147 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ValidateAndSaveCustomerKmsInfo
             
            $query = New-RscMutationMisc -Operation 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 148 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: VmMakePrimary
             
            $query = New-RscMutationMisc -Operation 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 149 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: WarmSearchCache
             
            $query = New-RscMutationMisc -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 25 operations in the 'Microsoft SQL Server' API domain: AddHost, AssignSlaDomainProperties, AssignSlaDomainPropertiesAsync, BrowseDatabaseSnapshot, BulkCreateOnDemandBackup, BulkExportDatabases, 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 25 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, BulkExportDatabases, 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">BulkExportDatabases</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 -Operation 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
                        oracleSddWalletPath = $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
                        }
                        # OPTIONAL
                        oracleSddUserCredentials = @{
                            # REQUIRED
                            password = $someString
                            # REQUIRED
                            username = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: BulkExportDatabases
             
            $query = New-RscMutationMssql -Operation BulkExportDatabases
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # OPTIONAL
                    allowOverwrite = $someBoolean
                    # OPTIONAL
                    targetDataFilePath = $someString
                    # OPTIONAL
                    targetLogFilePath = $someString
                    # OPTIONAL
                    finishRecovery = $someBoolean
                    # OPTIONAL
                    recoveryPoint = @{
                        # OPTIONAL
                        timestampMs = $someInt64
                        # OPTIONAL
                        date = $someDateTime
                        # OPTIONAL
                        lsnPoint = @{
                            # OPTIONAL
                            recoveryForkGuid = $someString
                            # REQUIRED
                            lsn = $someString
                        }
                    }
                    # REQUIRED
                    sourceInstanceIds = @(
                        $someString
                    )
                    # REQUIRED
                    targetInstanceId = $someString
                }
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: AsyncRequestStatus</dev:code>
        <dev:remarks>
          <maml:para>Runs the BulkExportDatabases 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: BulkUpdateAvailabilityGroup
             
            $query = New-RscMutationMssql -Operation 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 8 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: BulkUpdateDbs
             
            $query = New-RscMutationMssql -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: BulkUpdateInstance
             
            $query = New-RscMutationMssql -Operation 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: BulkUpdatePropertiesOnHost
             
            $query = New-RscMutationMssql -Operation 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 11 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: BulkUpdatePropertiesOnWindowsCluster
             
            $query = New-RscMutationMssql -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: CreateLiveMount
             
            $query = New-RscMutationMssql -Operation 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 13 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: CreateLogShippingConfiguration
             
            $query = New-RscMutationMssql -Operation 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 14 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: CreateOnDemandBackup
             
            $query = New-RscMutationMssql -Operation 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 15 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: DeleteDbSnapshots
             
            $query = New-RscMutationMssql -Operation 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 16 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: DeleteLiveMount
             
            $query = New-RscMutationMssql -Operation 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 17 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: DeleteLogShipping
             
            $query = New-RscMutationMssql -Operation 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 18 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: DownloadDatabaseBackupFiles
             
            $query = New-RscMutationMssql -Operation 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 19 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: DownloadDatabaseFilesFromArchivalLocation
             
            $query = New-RscMutationMssql -Operation 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 20 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: ExportDatabase
             
            $query = New-RscMutationMssql -Operation 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 21 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: RestoreDatabase
             
            $query = New-RscMutationMssql -Operation 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 22 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: TakeLogBackup
             
            $query = New-RscMutationMssql -Operation 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 23 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: UpdateDefaultProperties
             
            $query = New-RscMutationMssql -Operation 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 24 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: UpdateLogShippingConfiguration
             
            $query = New-RscMutationMssql -Operation 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 25 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Mssql
            # API Operation: UpdateLogShippingConfigurationV1
             
            $query = New-RscMutationMssql -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 28 operations in the 'Nutanix' API domain: BatchExportVm, BatchMountVm, BulkOnDemandSnapshotVm, CreateCluster, CreateOnDemandBackup, CreatePrismCentral, DeleteCluster, DeleteMountV1, DeletePrismCentral, DeleteSnapshot, DeleteSnapshots, DownloadFilesSnapshot, DownloadSnapshot, DownloadVdisks, DownloadVmFromLocation, ExportSnapshot, InplaceExportSnapshot, 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 28 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, InplaceExportSnapshot, 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">InplaceExportSnapshot</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                        username = $someString
                        # OPTIONAL
                        password = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation DownloadFilesSnapshot
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # OPTIONAL
                    zipPassword = $someString
                    # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: InplaceExportSnapshot
             
            $query = New-RscMutationNutanix -Operation InplaceExportSnapshot
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # OPTIONAL
                    powerOn = $someBoolean
                    # OPTIONAL
                    shouldKeepRollbackSnapshot = $someBoolean
                    # 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 InplaceExportSnapshot 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: MigrateMountV1
             
            $query = New-RscMutationNutanix -Operation 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 19 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: MountSnapshotV1
             
            $query = New-RscMutationNutanix -Operation 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 20 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: MountVdisks
             
            $query = New-RscMutationNutanix -Operation 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 21 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: PatchMountV1
             
            $query = New-RscMutationNutanix -Operation 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 22 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: RefreshCluster
             
            $query = New-RscMutationNutanix -Operation 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 23 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: RefreshPrismCentral
             
            $query = New-RscMutationNutanix -Operation 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 24 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: RegisterAgentVm
             
            $query = New-RscMutationNutanix -Operation 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 25 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: RestoreFilesSnapshot
             
            $query = New-RscMutationNutanix -Operation 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 26 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: UpdateCluster
             
            $query = New-RscMutationNutanix -Operation 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 27 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: UpdatePrismCentral
             
            $query = New-RscMutationNutanix -Operation 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 28 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nutanix
            # API Operation: UpdateVm
             
            $query = New-RscMutationNutanix -Operation 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 34 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, RestoreFullTeams, 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 34 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, RestoreFullTeams, 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 -Operation 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 -Operation 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 -Operation 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 -Operation BackupSharePointSite
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                siteFid = $someString
                # OPTIONAL
                retentionSlaId = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: RestoreFullTeams
             
            $query = New-RscMutationO365 -Operation RestoreFullTeams
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                teamId = $someString
                # OPTIONAL
                destTeamInfo = @{
                    # REQUIRED
                    destTeamName = $someString
                    # OPTIONAL
                    destTeamOrgId = $someString
                }
                # OPTIONAL
                teamOwnerEmail = $someString
                # REQUIRED
                snapshotSequenceNum = $someInt
                # OPTIONAL
                inplaceRestoreConfig = @{
                    # REQUIRED
                    nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values.
                }
                # REQUIRED
                refreshTokenEncrypted = $someString
                # REQUIRED
                o365AppId = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the RestoreFullTeams 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: RestoreMailbox
             
            $query = New-RscMutationO365 -Operation 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 24 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: O365
            # API Operation: RestoreMailboxV2
             
            $query = New-RscMutationO365 -Operation 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 25 --------------------------</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 -Operation 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 -Operation 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 -Operation 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 -Operation CreatePdbRestore
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # REQUIRED
                    pdbsToRestore = @(
                        $someString
                    )
                    # REQUIRED
                    recoveryPoint = @{
                        # OPTIONAL
                        snapshotId = $someString
                        # OPTIONAL
                        timestampMs = $someInt64
                        # OPTIONAL
                        scn = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                            # OPTIONAL
                            scn = $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 -Operation ExportTablespace
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # OPTIONAL
                    exposeAllLogs = $someBoolean
                    # REQUIRED
                    auxiliaryDestinationPath = $someString
                    # REQUIRED
                    recoveryPoint = @{
                        # OPTIONAL
                        snapshotId = $someString
                        # OPTIONAL
                        timestampMs = $someInt64
                        # OPTIONAL
                        scn = $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 -Operation InstantRecoverSnapshot
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # OPTIONAL
                    numChannels = $someInt
                    # OPTIONAL
                    shouldSkipDropDbInUndo = $someBoolean
                    # REQUIRED
                    recoveryPoint = @{
                        # OPTIONAL
                        snapshotId = $someString
                        # OPTIONAL
                        timestampMs = $someInt64
                        # OPTIONAL
                        scn = $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 -Operation 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
                            # OPTIONAL
                            scn = $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 -Operation 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 -Operation RestoreLogs
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # OPTIONAL
                    targetMountPath = $someString
                    # REQUIRED
                    oracleLogRecoveryRange = @{
                        # OPTIONAL
                        oracleScnRange = @{
                            # REQUIRED
                            endScn = $someInt64
                            # REQUIRED
                            startScn = $someInt64
                        }
                        # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                        # OPTIONAL
                        scn = $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 15 operations in the 'Policy' API domain: AddPolicyObjects, CreatePolicy, CreateTprPolicy, DeactivatePolicy, DeleteTprPolicy, GetHealthMonitorPolicyStatus, RemovePolicyObjects, SeedEnabledPolicies, SeedInitialPolicies, SetPasswordComplexityPolicy, UpdateAutoEnablePolicyClusterConfig, UpdateHealthMonitorPolicyStatus, UpdateOrgSecurityPolicy, UpdatePolicy, or UpdateTprPolicy.</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 15 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, CreateTprPolicy, DeactivatePolicy, DeleteTprPolicy, GetHealthMonitorPolicyStatus, RemovePolicyObjects, SeedEnabledPolicies, SeedInitialPolicies, SetPasswordComplexityPolicy, UpdateAutoEnablePolicyClusterConfig, UpdateHealthMonitorPolicyStatus, UpdateOrgSecurityPolicy, UpdatePolicy, or UpdateTprPolicy. 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">CreateTprPolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeactivatePolicy</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteTprPolicy</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:parameterValue required="false" command:variableLength="false">UpdateTprPolicy</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 -Operation 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 -Operation 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: CreateTprPolicy
             
            $query = New-RscMutationPolicy -Operation CreateTprPolicy
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                name = $someString
                # REQUIRED
                description = $someString
                # REQUIRED
                policyScope = $someTprPolicyScope # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TprPolicyScope]) for enum values.
                # REQUIRED
                policyRules = @(
                    @{
                        # REQUIRED
                        tprPolicyObject = @{
                            # REQUIRED
                            objectId = $someString
                            # REQUIRED
                            managedObjectType = $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                            # REQUIRED
                            workloadHierarchy = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                            # REQUIRED
                            clusterId = $someString
                        }
                        # REQUIRED
                        tprRules = @(
                            $someTprRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TprRule]) for enum values.
                        )
                    }
                )
                # REQUIRED
                exemptServiceAccounts = @(
                    $someString
                )
                # OPTIONAL
                quorumRequirement = $someInt
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CreateTprPolicyReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateTprPolicy 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: DeactivatePolicy
             
            $query = New-RscMutationPolicy -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: DeleteTprPolicy
             
            $query = New-RscMutationPolicy -Operation DeleteTprPolicy
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                policyId = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the DeleteTprPolicy 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: GetHealthMonitorPolicyStatus
             
            $query = New-RscMutationPolicy -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: RemovePolicyObjects
             
            $query = New-RscMutationPolicy -Operation 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 8 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: SeedEnabledPolicies
             
            $query = New-RscMutationPolicy -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: SeedInitialPolicies
             
            $query = New-RscMutationPolicy -Operation 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: SetPasswordComplexityPolicy
             
            $query = New-RscMutationPolicy -Operation 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 11 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: UpdateAutoEnablePolicyClusterConfig
             
            $query = New-RscMutationPolicy -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: UpdateHealthMonitorPolicyStatus
             
            $query = New-RscMutationPolicy -Operation 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 13 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: UpdateOrgSecurityPolicy
             
            $query = New-RscMutationPolicy -Operation 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 14 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: UpdatePolicy
             
            $query = New-RscMutationPolicy -Operation 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:example>
        <maml:title>-------------------------- Example 15 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: UpdateTprPolicy
             
            $query = New-RscMutationPolicy -Operation UpdateTprPolicy
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                policyId = $someString
                # REQUIRED
                name = $someString
                # REQUIRED
                description = $someString
                # REQUIRED
                policyRules = @(
                    @{
                        # REQUIRED
                        tprPolicyObject = @{
                            # REQUIRED
                            objectId = $someString
                            # REQUIRED
                            managedObjectType = $someManagedObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedObjectType]) for enum values.
                            # REQUIRED
                            workloadHierarchy = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values.
                            # REQUIRED
                            clusterId = $someString
                        }
                        # REQUIRED
                        tprRules = @(
                            $someTprRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TprRule]) for enum values.
                        )
                    }
                )
                # REQUIRED
                exemptServiceAccounts = @(
                    $someString
                )
                # OPTIONAL
                quorumRequirement = $someInt
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.String</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateTprPolicy 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                # 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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation CreatePair
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                sourceGateway = @{
                    # REQUIRED
                    address = $someString
                    # REQUIRED
                    ports = @(
                        $someInt
                    )
                }
                # OPTIONAL
                targetGateway = @{
                    # REQUIRED
                    address = $someString
                    # REQUIRED
                    ports = @(
                        $someInt
                    )
                }
                # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation UpdateTarget
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                sourceGateway = @{
                    # REQUIRED
                    address = $someString
                    # REQUIRED
                    ports = @(
                        $someInt
                    )
                }
                # OPTIONAL
                targetGateway = @{
                    # REQUIRED
                    address = $someString
                    # REQUIRED
                    ports = @(
                        $someInt
                    )
                }
                # 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 -Operation 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 -Operation 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
                showChartsInEmailBody = $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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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.
                )
                # OPTIONAL
                showChartsInEmailBody = $someBoolean
            }
             
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                    showChartsInEmailBody = $someBoolean
                    # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
              
              
              
              
            PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Sharepoint
            # API Operation: ExcludeObjectsFromProtection
             
            $query = New-RscMutationSharepoint -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                # OPTIONAL
                archivedSnapshotId = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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>Create a new RscQuery object for any of the 4 operations in the 'Syslog' API domain: AddExportRule, DeleteExportRule, TestExportRule, or UpdateExportRule.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>New-RscMutationSyslog creates a new mutation 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 4 operations in the 'Syslog' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddExportRule, DeleteExportRule, TestExportRule, or UpdateExportRule. 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-RscMutationSyslog -AddExportRule).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-RscMutationSyslog -AddExportRule).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-RscMutationSyslog</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-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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 = @(
                    @{
                        # OPTIONAL
                        threatFamily = $someString
                        # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
              
              
              
              
            PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Vmware
            # API Operation: DownloadSnapshotFromLocation
             
            $query = New-RscMutationVmware -Operation 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 12 operations in the 'VMware vSphere' API domain: BulkOnDemandSnapshot, CreateAdvancedTag, DeleteAdvancedTag, DeleteLiveMount, DownloadVirtualMachineFiles, ExportSnapshotToStandaloneHostV2, OnDemandSnapshot, SnapshotConsistency, 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 12 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, SnapshotConsistency, 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">SnapshotConsistency</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: SnapshotConsistency
             
            $query = New-RscMutationVsphere -Operation SnapshotConsistency
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                config = @{
                    # REQUIRED
                    snapshotConsistencyMandate = $someVmwareUpdateSnapshotConsistencyJobConfigSnapshotConsistencyMandate # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmwareUpdateSnapshotConsistencyJobConfigSnapshotConsistencyMandate]) for enum values.
                    # 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 SnapshotConsistency 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: SnapshotDownloadFilesFromLocation
             
            $query = New-RscMutationVsphere -Operation 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Vsphere
            # API Operation: SnapshotRestoreFilesFromLocation
             
            $query = New-RscMutationVsphere -Operation 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 11 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Vsphere
            # API Operation: UpdateAdvancedTag
             
            $query = New-RscMutationVsphere -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Vsphere
            # API Operation: UpdateVmNew
             
            $query = New-RscMutationVsphere -Operation UpdateVmNew
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                id = $someString
                # OPTIONAL
                vmUpdateProperties = @{
                    # OPTIONAL
                    shouldRefreshCacheAfterUpdate = $someBoolean
                    # OPTIONAL
                    guestCredentialId = $someString
                    # OPTIONAL
                    shouldUseAgent = $someBoolean
                    # 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
                        multiNodeBackupMode = $someMultiNodeBackupMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MultiNodeBackupMode]) for enum values.
                        # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation Update
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                id = $someString
                # REQUIRED
                vmUpdateProperties = @{
                    # OPTIONAL
                    shouldRefreshCacheAfterUpdate = $someBoolean
                    # OPTIONAL
                    guestCredentialId = $someString
                    # OPTIONAL
                    shouldUseAgent = $someBoolean
                    # OPTIONAL
                    guestCredential = @{
                        # REQUIRED
                        password = $someString
                        # REQUIRED
                        username = $someString
                    }
                    # OPTIONAL
                    virtualMachineUpdate = @{
                        # OPTIONAL
                        configuredSlaDomainId = $someString
                        # OPTIONAL
                        isArrayIntegrationEnabled = $someBoolean
                        # OPTIONAL
                        isVmPaused = $someBoolean
                        # OPTIONAL
                        maxNestedVsphereSnapshots = $someInt
                        # OPTIONAL
                        multiNodeBackupMode = $someMultiNodeBackupMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MultiNodeBackupMode]) for enum values.
                        # 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 -Operation 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 10 operations in the 'Webhook' API domain: Create, CreateV2, Delete, DeleteV2, SendTestMessageTo, SendTestMessageToExisting, Test, TestExisting, Update, or UpdateV2.</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 10 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, CreateV2, Delete, DeleteV2, SendTestMessageTo, SendTestMessageToExisting, Test, TestExisting, Update, 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-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">CreateV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">Delete</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">DeleteV2</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SendTestMessageTo</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">SendTestMessageToExisting</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:parameterValue required="false" command:variableLength="false">UpdateV2</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 -Operation 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: CreateV2
             
            $query = New-RscMutationWebhook -Operation CreateV2
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                payload = @{
                    # OPTIONAL
                    name = $someString
                    # OPTIONAL
                    url = $someString
                    # REQUIRED
                    providerType = $someProviderTypeV2 # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProviderTypeV2]) for enum values.
                    # REQUIRED
                    authInfo = @{
                        # OPTIONAL
                        token = $someString
                        # REQUIRED
                        authType = $someAuthenticationTypeV2 # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthenticationTypeV2]) for enum values.
                        # OPTIONAL
                        userCredentials = @{
                            # REQUIRED
                            username = $someString
                            # REQUIRED
                            password = $someString
                        }
                        # OPTIONAL
                        customHeaders = @(
                            @{
                                # REQUIRED
                                headerKey = $someString
                                # REQUIRED
                                headerValue = $someString
                            }
                        )
                    }
                    # REQUIRED
                    subscriptionType = @{
                        # OPTIONAL
                        eventSubscription = @{
                            # OPTIONAL
                            isSubscribedToAllEvents = $someBoolean
                            # OPTIONAL
                            isSubscribedToAllObjectTypes = $someBoolean
                            # REQUIRED
                            eventTypes = @(
                                $someEventType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventType]) for enum values.
                            )
                            # REQUIRED
                            objectTypes = @(
                                $someEventObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventObjectType]) for enum values.
                            )
                            # REQUIRED
                            severities = @(
                                $someEventSeverity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventSeverity]) for enum values.
                            )
                            # REQUIRED
                            templateInfo = @{
                                # REQUIRED
                                template = @{
                                    # OPTIONAL
                                    templateId = $someInt
                                    # OPTIONAL
                                    customTemplate = $someString
                                }
                            }
                        }
                        # OPTIONAL
                        auditSubscription = @{
                            # OPTIONAL
                            isSubscribedToAllAudits = $someBoolean
                            # OPTIONAL
                            isSubscribedToAllObjectTypes = $someBoolean
                            # REQUIRED
                            auditTypes = @(
                                $someAuditType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuditType]) for enum values.
                            )
                            # REQUIRED
                            objectTypes = @(
                                $someAuditObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuditObjectType]) for enum values.
                            )
                            # REQUIRED
                            severities = @(
                                $someAuditSeverity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuditSeverity]) for enum values.
                            )
                            # REQUIRED
                            templateInfo = @{
                                # REQUIRED
                                template = @{
                                    # OPTIONAL
                                    templateId = $someInt
                                    # OPTIONAL
                                    customTemplate = $someString
                                }
                            }
                        }
                    }
                    # OPTIONAL
                    description = $someString
                    # OPTIONAL
                    serverCertificate = $someString
                    # OPTIONAL
                    serviceAccountId = $someString
                }
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CreateWebhookV2Reply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CreateV2 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: Delete
             
            $query = New-RscMutationWebhook -Operation 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 4 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Webhook
            # API Operation: DeleteV2
             
            $query = New-RscMutationWebhook -Operation DeleteV2
             
            # 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 DeleteV2 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: SendTestMessageTo
             
            $query = New-RscMutationWebhook -Operation SendTestMessageTo
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                url = $someString
                # REQUIRED
                providerType = $someProviderTypeV2 # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProviderTypeV2]) for enum values.
                # REQUIRED
                authInfo = @{
                    # OPTIONAL
                    token = $someString
                    # REQUIRED
                    authType = $someAuthenticationTypeV2 # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthenticationTypeV2]) for enum values.
                    # OPTIONAL
                    userCredentials = @{
                        # REQUIRED
                        username = $someString
                        # REQUIRED
                        password = $someString
                    }
                    # OPTIONAL
                    customHeaders = @(
                        @{
                            # REQUIRED
                            headerKey = $someString
                            # REQUIRED
                            headerValue = $someString
                        }
                    )
                }
                # OPTIONAL
                serverCertificate = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: SendTestMessageToWebhookReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SendTestMessageTo operation of the 'Webhook' 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: Webhook
            # API Operation: SendTestMessageToExisting
             
            $query = New-RscMutationWebhook -Operation SendTestMessageToExisting
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                id = $someInt
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: SendTestMessageToExistingWebhookReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the SendTestMessageToExisting operation of the 'Webhook' 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: Webhook
            # API Operation: Test
             
            $query = New-RscMutationWebhook -Operation 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 8 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Webhook
            # API Operation: TestExisting
             
            $query = New-RscMutationWebhook -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Webhook
            # API Operation: Update
             
            $query = New-RscMutationWebhook -Operation 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:example>
        <maml:title>-------------------------- Example 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Webhook
            # API Operation: UpdateV2
             
            $query = New-RscMutationWebhook -Operation UpdateV2
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                id = $someInt
                # REQUIRED
                payload = @{
                    # OPTIONAL
                    name = $someString
                    # OPTIONAL
                    url = $someString
                    # REQUIRED
                    providerType = $someProviderTypeV2 # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProviderTypeV2]) for enum values.
                    # REQUIRED
                    authInfo = @{
                        # OPTIONAL
                        token = $someString
                        # REQUIRED
                        authType = $someAuthenticationTypeV2 # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthenticationTypeV2]) for enum values.
                        # OPTIONAL
                        userCredentials = @{
                            # REQUIRED
                            username = $someString
                            # REQUIRED
                            password = $someString
                        }
                        # OPTIONAL
                        customHeaders = @(
                            @{
                                # REQUIRED
                                headerKey = $someString
                                # REQUIRED
                                headerValue = $someString
                            }
                        )
                    }
                    # REQUIRED
                    subscriptionType = @{
                        # OPTIONAL
                        eventSubscription = @{
                            # OPTIONAL
                            isSubscribedToAllEvents = $someBoolean
                            # OPTIONAL
                            isSubscribedToAllObjectTypes = $someBoolean
                            # REQUIRED
                            eventTypes = @(
                                $someEventType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventType]) for enum values.
                            )
                            # REQUIRED
                            objectTypes = @(
                                $someEventObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventObjectType]) for enum values.
                            )
                            # REQUIRED
                            severities = @(
                                $someEventSeverity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.EventSeverity]) for enum values.
                            )
                            # REQUIRED
                            templateInfo = @{
                                # REQUIRED
                                template = @{
                                    # OPTIONAL
                                    templateId = $someInt
                                    # OPTIONAL
                                    customTemplate = $someString
                                }
                            }
                        }
                        # OPTIONAL
                        auditSubscription = @{
                            # OPTIONAL
                            isSubscribedToAllAudits = $someBoolean
                            # OPTIONAL
                            isSubscribedToAllObjectTypes = $someBoolean
                            # REQUIRED
                            auditTypes = @(
                                $someAuditType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuditType]) for enum values.
                            )
                            # REQUIRED
                            objectTypes = @(
                                $someAuditObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuditObjectType]) for enum values.
                            )
                            # REQUIRED
                            severities = @(
                                $someAuditSeverity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuditSeverity]) for enum values.
                            )
                            # REQUIRED
                            templateInfo = @{
                                # REQUIRED
                                template = @{
                                    # OPTIONAL
                                    templateId = $someInt
                                    # OPTIONAL
                                    customTemplate = $someString
                                }
                            }
                        }
                    }
                    # OPTIONAL
                    description = $someString
                    # OPTIONAL
                    serverCertificate = $someString
                    # OPTIONAL
                    serviceAccountId = $someString
                }
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: UpdateWebhookV2Reply</dev:code>
        <dev:remarks>
          <maml:para>Runs the UpdateV2 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, allIamPairsByCloudAccountAndLocation, allIntegrations, allInventoryWorkloads, allIssuesJobIds, allK8sReplicaSnapshotInfos, allKmsEncryptionKeysByRegionFromAws, allLatestFeaturePermissionsForCloudAccounts, allLicensedProducts, allMipLabels, 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, allWebhookMessageTemplates, allWebhooks, allWebhooksV2, 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, cloudClusterRecoveryValidation, cloudDirectClusterEndpoints, cloudDirectNasExport, cloudDirectNasNamespace, cloudDirectNasNamespaces, cloudDirectNasShare, cloudDirectNasSystem, cloudDirectNasSystems, 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, countClusters, countOfObjectsProtectedBySlas, crawl, crawls, crossAccountPairs, currentIpAddress, currentOrg, currentOrgAuthDomainConfig, currentUser, currentUserLoginContext, customAnalyzer, customTprPolicies, 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, exocomputeGetClusterConnectionInfo, externalDeploymentName, failedRestoreItemsInfo, failoverClusterApp, failoverClusterApps, failoverClusterTopLevelDescendants, featurePermissionForDataCenterRoleBasedArchival, 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, isCloudClusterDiskUpgradeAvailable, isCloudNativeFileRecoveryFeasible, isIpmiEnabled, isLoggedIntoRubrikSupportPortal, isOrgServiceAccountDisabled, isReplaceNodeTprConfigured, isSfdcReachable, issue, issues, isTotpAckNecessaryForCluster, isTotpMandatoryInTargetVersion, isTriggerRcvGrsTprConfigured, isUpgradeAvailable, isUpgradeRecommended, isValidTprPolicyName, 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, m365BackupStorageLicenseUsage, m365BackupStorageObjectRestorePoints, m365DayToDayModeStats, m365DirectoryObjectAttributes, m365LicenseEntitlement, m365OnboardingModeBackupStats, m365OnboardingModeStats, m365OrgBackupLocations, m365OrgOperationModes, m365Regions, managedVolume, managedVolumeInventoryStats, managedVolumeLiveMounts, managedVolumes, maxProtectedAppsCount, mfaSetting, microsoftSites, 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, nasShares, 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, rscPermsToCdmInfo, s3BucketStateForRecovery, sapHanaDatabase, sapHanaDatabases, sapHanaLogSnapshot, sapHanaLogSnapshots, sapHanaRecoverableRange, sapHanaRecoverableRanges, sapHanaSystem, sapHanaSystems, scheduledReport, scheduledReports, searchAzureAdSnapshot, searchFileByPrefix, searchHost, searchNutanixVm, searchSnappableConnection, searchSnappableVersionedFiles, serviceAccounts, sessionInactivityTimeoutInSeconds, 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, snapshotsOfCloudDirectShare, snmpConfigurations, snoozedDirectories, sonarContentReport, sonarReport, sonarReportRow, sonarUserGroups, sonarUsers, ssoGroupAlreadyExists, supportBundle, supportUserAccesses, syslogExportRules, tableFilters, target, targetMapping, targets, taskchain, taskDetailConnection, taskDetailGroupByConnection, teamChannelNameAvailable, threatHuntDetail, threatHuntResult, threatHunts, threatHuntSummary, totpConfigStatus, tprConfiguration, tprPolicyDetail, tprPublicConfiguration, tprRequestDetail, tprRequestSummaries, tprRoleEligibility, tprRulesMap, tprStatusForNodeRemoval, tunnelStatus, uniqueHypervServersCount, uniqueVcdCount, unmanagedObjects, upgradeStatus, userActivities, userActivityTimeline, userAlreadyExists, 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, vSphereTopLevelRecoveryTargets, vSphereVCenter, vSphereVCenterConnection, vSphereVMAsyncRequestStatus, vsphereVMMissedRecoverableRange, vSphereVmNew, vSphereVmNewConnection, vsphereVMRecoverableRange, vsphereVMRecoverableRangeInBatch, vsphereVmwareCdpLiveInfo, webhookById, webhookMessageTemplateById, 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 5 operations in the 'Activity series' API domain: ActivitySeries, List, SessionInTimeoutInSeconds, 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 5 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, SessionInTimeoutInSeconds, 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">SessionInTimeoutInSeconds</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 -Operation 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 -Operation 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: SessionInTimeoutInSeconds
             
            $query = New-RscQueryActivitySeries -Operation SessionInTimeoutInSeconds
             
            # No variables for this query.
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.Int64</dev:code>
        <dev:remarks>
          <maml:para>Runs the SessionInTimeoutInSeconds 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: UserFileTimeline
             
            $query = New-RscQueryActivitySeries -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: ActivitySeries
            # API Operation: UserTimeline
             
            $query = New-RscQueryActivitySeries -Operation 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 9 operations in the 'Archival' API domain: FeaturePermissionForDataCenterRoleBased, 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 9 operations in the 'Archival' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: FeaturePermissionForDataCenterRoleBased, 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 -FeaturePermissionForDataCenterRoleBased).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 -FeaturePermissionForDataCenterRoleBased).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">FeaturePermissionForDataCenterRoleBased</command:parameterValue>
            <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: FeaturePermissionForDataCenterRoleBased
             
            $query = New-RscQueryArchival -Operation FeaturePermissionForDataCenterRoleBased
             
            # 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: FeaturePermission</dev:code>
        <dev:remarks>
          <maml:para>Runs the FeaturePermissionForDataCenterRoleBased 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: HierarchyObjectRecoveryTarget
             
            $query = New-RscQueryArchival -Operation 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 3 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Archival
            # API Operation: IsTotpMandatoryInTargetVersion
             
            $query = New-RscQueryArchival -Operation 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 4 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Archival
            # API Operation: RcsLocationsConsumptionStats
             
            $query = New-RscQueryArchival -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Archival
            # API Operation: StorageUsage
             
            $query = New-RscQueryArchival -Operation 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 6 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Archival
            # API Operation: Target
             
            $query = New-RscQueryArchival -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Archival
            # API Operation: TargetMapping
             
            $query = New-RscQueryArchival -Operation 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 8 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Archival
            # API Operation: TargetMappings
             
            $query = New-RscQueryArchival -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Archival
            # API Operation: Targets
             
            $query = New-RscQueryArchival -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                # OPTIONAL
                featuresToFilterOut = @(
                    $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;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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation ValidateCreateClusterInput
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                cloudAccountId = $someString
                # OPTIONAL
                isEsType = $someBoolean
                # OPTIONAL
                keepClusterOnFailure = $someBoolean
                # OPTIONAL
                region = $someString
                # OPTIONAL
                disableApiTermination = $someBoolean
                # OPTIONAL
                usePlacementGroups = $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
                    placementGroupName = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                awsNativeFeatureStatusFilter = @{
                    # REQUIRED
                    awsNativeFeatureStatus = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                }
            }
            # 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 -Operation 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 -Operation 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 -Operation 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
                awsNativeFeatureStatusFilter = @{
                    # REQUIRED
                    awsNativeFeatureStatus = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                }
            }
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                awsNativeFeatureStatusFilter = @{
                    # REQUIRED
                    awsNativeFeatureStatus = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
                }
            }
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation CloudAccountTenant
             
            # REQUIRED
            $query.Var.tenantId = $someString
            # REQUIRED
            $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
            # OPTIONAL
            $query.Var.features = @(
                $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 -Operation CloudAccountTenantWithExoConfigs
             
            # REQUIRED
            $query.Var.tenantId = $someString
            # REQUIRED
            $query.Var.feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values.
            # OPTIONAL
            $query.Var.features = @(
                $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation SqlDatabase
             
            # REQUIRED
            $query.Var.azureSqlDatabaseRubrikId = $someString
            # OPTIONAL
            $query.Var.includeSecurityMetadata = $someBoolean
             
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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
                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
                serverFilter = @{
                    # REQUIRED
                    serverNames = @(
                        $someString
                    )
                }
            }
            # OPTIONAL
            $query.Var.includeSecurityMetadata = $someBoolean
             
            # 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 -Operation SqlManagedInstanceDatabase
             
            # REQUIRED
            $query.Var.azureSqlManagedInstanceDatabaseRubrikId = $someString
            # OPTIONAL
            $query.Var.includeSecurityMetadata = $someBoolean
             
            # 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 -Operation 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
                sensitivityStatusFilter = @{
                    # REQUIRED
                    sensitivityStatuses = @(
                        $someString
                    )
                }
                # OPTIONAL
                protectionStatusFilter = @{
                    # REQUIRED
                    protectionStatuses = @(
                        $someString
                    )
                }
                # OPTIONAL
                serverFilter = @{
                    # REQUIRED
                    serverNames = @(
                        $someString
                    )
                }
            }
            # OPTIONAL
            $query.Var.includeSecurityMetadata = $someBoolean
             
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation ValidateCloudAccountExocomputeConfigurations
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                cloudAccountId = $someString
                # REQUIRED
                azureExocomputeRegionConfigs = @(
                    @{
                        # REQUIRED
                        region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values.
                        # OPTIONAL
                        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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation ManagedDisk
             
            # REQUIRED
            $query.Var.azureManagedDiskRubrikId = $someString
            # OPTIONAL
            $query.Var.includeSecurityMetadata = $someBoolean
             
            # 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 -Operation 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
                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
                exocomputeConnectedFilter = @{
                    # REQUIRED
                    isConnected = $someBoolean
                }
                # OPTIONAL
                fileIndexingFilter = @{
                    # REQUIRED
                    statuses = @(
                        $someAzureNativeFileIndexingStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeFileIndexingStatus]) 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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation VirtualMachine
             
            # REQUIRED
            $query.Var.azureVirtualMachineRubrikId = $someString
            # OPTIONAL
            $query.Var.includeSecurityMetadata = $someBoolean
             
            # 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 -Operation 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 -Operation 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
                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
                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
                    )
                }
            }
            # OPTIONAL
            $query.Var.includeSecurityMetadata = $someBoolean
             
            # 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 7 operations in the 'Cloud Account' API domain: CloudAccount, CloudAccounts, CurrentFeaturePermissions, ExocomputeMappings, IamPairsByAndLocation, 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 7 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, IamPairsByAndLocation, 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">IamPairsByAndLocation</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: IamPairsByAndLocation
             
            $query = New-RscQueryCloudAccount -Operation IamPairsByAndLocation
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                locationId = $someString
                # OPTIONAL
                cloudAccountId = $someString
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: List&lt;AwsIamPairsWithMissingPermission&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the IamPairsByAndLocation 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: LatestFeaturePermissions
             
            $query = New-RscQueryCloudAccount -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: CloudAccount
            # API Operation: WithExocomputeMappings
             
            $query = New-RscQueryCloudAccount -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 37 operations in the 'Cluster' API domain: CloudClusterRecoveryValidation, CloudDirectClusterEndpoints, Cluster, ClusterList, ComputeClusterStatus, Connected, Count, DefaultGateway, Dns, ExocomputeGetClusterConnectionInfo, FloatingIps, GetCdmReleaseDetailsForClusterFromSupportPortal, GetGroupCountByCdmClusterStatus, GroupByList, Ipmi, Ipv6Mode, IsCloudClusterDiskUpgradeAvailable, 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 37 operations in the 'Cluster' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CloudClusterRecoveryValidation, CloudDirectClusterEndpoints, Cluster, ClusterList, ComputeClusterStatus, Connected, Count, DefaultGateway, Dns, ExocomputeGetClusterConnectionInfo, FloatingIps, GetCdmReleaseDetailsForClusterFromSupportPortal, GetGroupCountByCdmClusterStatus, GroupByList, Ipmi, Ipv6Mode, IsCloudClusterDiskUpgradeAvailable, 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 -CloudClusterRecoveryValidation).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 -CloudClusterRecoveryValidation).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">CloudClusterRecoveryValidation</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudDirectClusterEndpoints</command:parameterValue>
            <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">Count</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">ExocomputeGetClusterConnectionInfo</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">IsCloudClusterDiskUpgradeAvailable</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: CloudClusterRecoveryValidation
             
            $query = New-RscQueryCluster -Operation CloudClusterRecoveryValidation
             
            # REQUIRED
            $query.Var.clusterUuid = $someString
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: ValidationRecoveryReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudClusterRecoveryValidation 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: CloudDirectClusterEndpoints
             
            $query = New-RscQueryCluster -Operation CloudDirectClusterEndpoints
             
            # REQUIRED
            $query.Var.clusterUuid = $someString
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: ClusterEndpoints</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectClusterEndpoints 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: Cluster
             
            $query = New-RscQueryCluster -Operation 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 4 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: ClusterList
             
            $query = New-RscQueryCluster -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: ComputeClusterStatus
             
            $query = New-RscQueryCluster -Operation 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 6 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Connected
             
            $query = New-RscQueryCluster -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Count
             
            $query = New-RscQueryCluster -Operation Count
             
            # 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.
                )
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CountClustersReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the Count 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: DefaultGateway
             
            $query = New-RscQueryCluster -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Dns
             
            $query = New-RscQueryCluster -Operation 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: ExocomputeGetClusterConnectionInfo
             
            $query = New-RscQueryCluster -Operation ExocomputeGetClusterConnectionInfo
             
            # REQUIRED
            $query.Var.input = @{
                # OPTIONAL
                clusterName = $someString
                # REQUIRED
                exocomputeConfigId = $someString
                # REQUIRED
                cloudType = $someCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudType]) for enum values.
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: ExocomputeGetClusterConnectionInfoReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the ExocomputeGetClusterConnectionInfo 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: FloatingIps
             
            $query = New-RscQueryCluster -Operation 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 12 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: GetCdmReleaseDetailsForClusterFromSupportPortal
             
            $query = New-RscQueryCluster -Operation 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 13 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: GetGroupCountByCdmClusterStatus
             
            $query = New-RscQueryCluster -Operation 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 14 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: GroupByList
             
            $query = New-RscQueryCluster -Operation 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 15 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Ipmi
             
            $query = New-RscQueryCluster -Operation 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 16 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Ipv6Mode
             
            $query = New-RscQueryCluster -Operation 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 17 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: IsCloudClusterDiskUpgradeAvailable
             
            $query = New-RscQueryCluster -Operation IsCloudClusterDiskUpgradeAvailable
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                cloudAccountId = $someString
                # REQUIRED
                vendor = $someCcpVendorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CcpVendorType]) for enum values.
                # REQUIRED
                clusterUuid = $someString
                # OPTIONAL
                batchSize = $someInt
                # OPTIONAL
                newNodeCount = $someInt
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: IsCloudClusterDiskUpgradeAvailableReply</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsCloudClusterDiskUpgradeAvailable 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: IsTotpAckNecessary
             
            $query = New-RscQueryCluster -Operation 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 19 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: LicensesForClusterProductSummary
             
            $query = New-RscQueryCluster -Operation 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 20 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: List
             
            $query = New-RscQueryCluster -Operation 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 21 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Missing
             
            $query = New-RscQueryCluster -Operation 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 22 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: NetworkInterfaces
             
            $query = New-RscQueryCluster -Operation 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 23 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Nodes
             
            $query = New-RscQueryCluster -Operation 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 24 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: NtpServers
             
            $query = New-RscQueryCluster -Operation 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 25 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: OperationJobProgress
             
            $query = New-RscQueryCluster -Operation 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 26 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Proxy
             
            $query = New-RscQueryCluster -Operation 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 27 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: RadarClusterList
             
            $query = New-RscQueryCluster -Operation 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 28 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: RegistrationProductInfo
             
            $query = New-RscQueryCluster -Operation 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 29 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: ReplicationTargets
             
            $query = New-RscQueryCluster -Operation 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 30 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Routes
             
            $query = New-RscQueryCluster -Operation 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 31 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: TotpAckStatus
             
            $query = New-RscQueryCluster -Operation 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 32 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: TypeList
             
            $query = New-RscQueryCluster -Operation 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 33 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: ValidateClusterLicenseCapacity
             
            $query = New-RscQueryCluster -Operation 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 34 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Vlans
             
            $query = New-RscQueryCluster -Operation 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 35 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: WebCertsAndIpmis
             
            $query = New-RscQueryCluster -Operation 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 36 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: Windows
             
            $query = New-RscQueryCluster -Operation 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 37 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Cluster
            # API Operation: WithUpgradesInfo
             
            $query = New-RscQueryCluster -Operation 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 -Operation 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
              
              
              
              
            PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: CrossAccount
            # API Operation: CrossAccountClusters
             
            $query = New-RscQueryCrossAccount -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 10 operations in the 'Microsoft 365' API domain: BackupStorageLicenseUsage, BackupStorageObjectRestorePoints, 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 10 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: BackupStorageLicenseUsage, BackupStorageObjectRestorePoints, 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 -BackupStorageLicenseUsage).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 -BackupStorageLicenseUsage).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">BackupStorageLicenseUsage</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">BackupStorageObjectRestorePoints</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: BackupStorageLicenseUsage
             
            $query = New-RscQueryM365 -Operation BackupStorageLicenseUsage
             
            # No variables for this query.
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: M365BackupStorageLicenseUsage</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupStorageLicenseUsage 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: BackupStorageObjectRestorePoints
             
            $query = New-RscQueryM365 -Operation BackupStorageObjectRestorePoints
             
            # OPTIONAL
            $query.Var.first = $someInt
            # OPTIONAL
            $query.Var.after = $someString
            # REQUIRED
            $query.Var.m365BackupStorageObjectRestorePointsInput = @{
                # REQUIRED
                objectId = $someString
                # REQUIRED
                rangeFilter = @{
                    # OPTIONAL
                    fromTime = $someDateTime
                    # OPTIONAL
                    untilTime = $someDateTime
                }
                # OPTIONAL
                restorePointTagType = @(
                    $someRestorePointTagType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RestorePointTagType]) 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: M365BackupStorageRestorePointConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the BackupStorageObjectRestorePoints 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: DayToDayModeStats
             
            $query = New-RscQueryM365 -Operation 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 4 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: M365
            # API Operation: DirectoryObjectAttributes
             
            $query = New-RscQueryM365 -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: M365
            # API Operation: LicenseEntitlement
             
            $query = New-RscQueryM365 -Operation LicenseEntitlement
             
            # OPTIONAL
            $query.Var.orgID = $someString
             
            # 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 6 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: M365
            # API Operation: OnboardingModeBackupStats
             
            $query = New-RscQueryM365 -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: M365
            # API Operation: OnboardingModeStats
             
            $query = New-RscQueryM365 -Operation 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 8 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: M365
            # API Operation: OrgBackupLocations
             
            $query = New-RscQueryM365 -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: M365
            # API Operation: OrgOperationModes
             
            $query = New-RscQueryM365 -Operation 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: M365
            # API Operation: Regions
             
            $query = New-RscQueryM365 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 199 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, CloudDirectNasNamespace, CloudDirectNasNamespaces, CloudDirectNasShare, 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, MicrosoftSites, MinimumCdmVersionForFeatureSet, MipLabels, 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, RscPermsToCdmInfo, SearchFileByPrefix, SnoozedDirectories, SsoGroupAlreadyExists, SupportBundle, SupportUserAccesses, TableFilters, Targets, TaskDetailGroupByList, TaskDetailList, Taskchain, TeamChannelNameAvailable, TotpConfigStatus, TprConfiguration, TprPublicConfiguration, TprRequestDetail, TprRequestSummaries, TprRoleEligibility, TprRulesMap, TprStatusForNodeRemoval, TunnelStatus, UniqueVcdCount, UnmanagedObjects, UnmanagedObjectsSupportedTypes, UpgradeStatus, UserActivities, UserAlreadyExists, 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 199 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, CloudDirectNasNamespace, CloudDirectNasNamespaces, CloudDirectNasShare, 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, MicrosoftSites, MinimumCdmVersionForFeatureSet, MipLabels, 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, RscPermsToCdmInfo, SearchFileByPrefix, SnoozedDirectories, SsoGroupAlreadyExists, SupportBundle, SupportUserAccesses, TableFilters, Targets, TaskDetailGroupByList, TaskDetailList, Taskchain, TeamChannelNameAvailable, TotpConfigStatus, TprConfiguration, TprPublicConfiguration, TprRequestDetail, TprRequestSummaries, TprRoleEligibility, TprRulesMap, TprStatusForNodeRemoval, TunnelStatus, UniqueVcdCount, UnmanagedObjects, UnmanagedObjectsSupportedTypes, UpgradeStatus, UserActivities, UserAlreadyExists, 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation AnalyzerUsages
             
            # OPTIONAL
            $query.Var.dataCategoryIdsFilter = @(
                $someString
            )
            # OPTIONAL
            $query.Var.riskLevelsFilter = @(
                $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values.
            )
            # OPTIONAL
            $query.Var.sortBy = $someAnalyzerUsagesSortBy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerUsagesSortBy]) for enum values.
            # OPTIONAL
            $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
            # OPTIONAL
            $query.Var.dataTypeSourceFilter = $someDataTypeSource # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataTypeSource]) for enum values.
            # OPTIONAL
            $query.Var.dataTypeNameSearchFilter = $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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: CloudDirectNasNamespace
             
            $query = New-RscQueryMisc -Operation CloudDirectNasNamespace
             
            # REQUIRED
            $query.Var.fid = $someString
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CloudDirectNasNamespace</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectNasNamespace 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: CloudDirectNasNamespaces
             
            $query = New-RscQueryMisc -Operation CloudDirectNasNamespaces
             
            # 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: CloudDirectNasNamespaceConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectNasNamespaces 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: CloudDirectNasShare
             
            $query = New-RscQueryMisc -Operation CloudDirectNasShare
             
            # REQUIRED
            $query.Var.fid = $someString
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CloudDirectNasShare</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectNasShare 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: CloudDirectShares
             
            $query = New-RscQueryMisc -Operation 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 38 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CloudDirectSites
             
            $query = New-RscQueryMisc -Operation 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 39 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CloudDirectSystems
             
            $query = New-RscQueryMisc -Operation 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 40 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ConfiguredGroupMembers
             
            $query = New-RscQueryMisc -Operation 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 41 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: Crawl
             
            $query = New-RscQueryMisc -Operation 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 42 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: Crawls
             
            $query = New-RscQueryMisc -Operation 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 43 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CrossAccountPairs
             
            $query = New-RscQueryMisc -Operation 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 44 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CurrentIpAddress
             
            $query = New-RscQueryMisc -Operation 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 45 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CurrentOrg
             
            $query = New-RscQueryMisc -Operation 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 46 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CurrentOrgAuthDomainConfig
             
            $query = New-RscQueryMisc -Operation 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 47 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CurrentOrgIdentityProviders
             
            $query = New-RscQueryMisc -Operation 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 48 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: CustomAnalyzer
             
            $query = New-RscQueryMisc -Operation 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 49 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DashboardSummary
             
            $query = New-RscQueryMisc -Operation 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 50 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DatagovSecDesc
             
            $query = New-RscQueryMisc -Operation 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 51 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DecryptExportUrl
             
            $query = New-RscQueryMisc -Operation 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 52 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeploymentIpAddresses
             
            $query = New-RscQueryMisc -Operation 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 53 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DeploymentVersion
             
            $query = New-RscQueryMisc -Operation 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 54 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DhrcActiveRecommendations
             
            $query = New-RscQueryMisc -Operation 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 55 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DhrcLatestMetrics
             
            $query = New-RscQueryMisc -Operation 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 56 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DhrcScores
             
            $query = New-RscQueryMisc -Operation 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 57 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DiffFmd
             
            $query = New-RscQueryMisc -Operation 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 58 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DiscoverNodes
             
            $query = New-RscQueryMisc -Operation 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 59 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DiscoveryTimeline
             
            $query = New-RscQueryMisc -Operation 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
            )
            # OPTIONAL
            $query.Var.objectIdsFilter = @(
                $someString
            )
            # OPTIONAL
            $query.Var.platformCategoryFilter = @(
                $somePlatformCategory # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PlatformCategory]) for enum values.
            )
             
            # 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 60 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DistributionListDigest
             
            $query = New-RscQueryMisc -Operation 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 61 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DistributionListDigests
             
            $query = New-RscQueryMisc -Operation 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 62 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: DummyFieldWithAdminOnlyTag
             
            $query = New-RscQueryMisc -Operation 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 63 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: EdgeWindowsToolLink
             
            $query = New-RscQueryMisc -Operation 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 64 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: EffectiveRbacPermissions
             
            $query = New-RscQueryMisc -Operation 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 65 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: EventDigests
             
            $query = New-RscQueryMisc -Operation 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 66 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: ExternalDeploymentName
             
            $query = New-RscQueryMisc -Operation 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 67 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: FailedRestoreItemsInfo
             
            $query = New-RscQueryMisc -Operation 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 68 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: FederatedLoginStatus
             
            $query = New-RscQueryMisc -Operation 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 69 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: FileActivities
             
            $query = New-RscQueryMisc -Operation 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 70 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GeoLocationList
             
            $query = New-RscQueryMisc -Operation 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 71 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetAllRolesInOrgList
             
            $query = New-RscQueryMisc -Operation 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
            )
            # OPTIONAL
            $query.Var.roleSyncedFilter = $someBoolean
             
            # 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 72 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetCdmReleaseDetailsForVersionFromSupportPortal
             
            $query = New-RscQueryMisc -Operation 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 73 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetCdmReleaseDetailsFromSupportPortal
             
            $query = New-RscQueryMisc -Operation 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 74 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetGroupCountByPrechecksStatus
             
            $query = New-RscQueryMisc -Operation 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 75 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetGroupCountByUpgradeJobStatus
             
            $query = New-RscQueryMisc -Operation 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 76 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetGroupCountByVersionStatus
             
            $query = New-RscQueryMisc -Operation 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 77 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetKorgTaskchainStatus
             
            $query = New-RscQueryMisc -Operation 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 78 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetPermissions
             
            $query = New-RscQueryMisc -Operation 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 79 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetRolesByIds
             
            $query = New-RscQueryMisc -Operation 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 80 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GetUserDownloads
             
            $query = New-RscQueryMisc -Operation 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 81 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GlobalFileSearch
             
            $query = New-RscQueryMisc -Operation 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 82 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GlobalLockoutConfig
             
            $query = New-RscQueryMisc -Operation 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 83 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GlobalMfaSetting
             
            $query = New-RscQueryMisc -Operation 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 84 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GlobalSearchResults
             
            $query = New-RscQueryMisc -Operation 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 85 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GroupsInCurrentAndDescendantOrganization
             
            $query = New-RscQueryMisc -Operation 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
                authDomainIdsFilter = @(
                    $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 86 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GuestCredentials
             
            $query = New-RscQueryMisc -Operation 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 87 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: GuestCredentialsV2
             
            $query = New-RscQueryMisc -Operation 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 88 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: HasIdpConfigured
             
            $query = New-RscQueryMisc -Operation 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 89 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: HelpContentSnippets
             
            $query = New-RscQueryMisc -Operation 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
                )
                # OPTIONAL
                url = $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 90 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: HierarchyObject
             
            $query = New-RscQueryMisc -Operation 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 91 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: HierarchyObjects
             
            $query = New-RscQueryMisc -Operation 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 92 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: InstalledVersionList
             
            $query = New-RscQueryMisc -Operation 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 93 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: InventoryRoot
             
            $query = New-RscQueryMisc -Operation 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 94 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: InventorySubHierarchyRoot
             
            $query = New-RscQueryMisc -Operation 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 95 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: InventoryWorkloads
             
            $query = New-RscQueryMisc -Operation 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 96 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: InvestigationCsvDownloadLink
             
            $query = New-RscQueryMisc -Operation 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 97 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IpWhitelist
             
            $query = New-RscQueryMisc -Operation 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 98 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IsIpmiEnabled
             
            $query = New-RscQueryMisc -Operation 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 99 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IsLoggedIntoRubrikSupportPortal
             
            $query = New-RscQueryMisc -Operation 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 100 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IsReplaceNodeTprConfigured
             
            $query = New-RscQueryMisc -Operation 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 101 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IsSfdcReachable
             
            $query = New-RscQueryMisc -Operation 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 102 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IsUpgradeAvailable
             
            $query = New-RscQueryMisc -Operation 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 103 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IsUpgradeRecommended
             
            $query = New-RscQueryMisc -Operation 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 104 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IsZrsAvailableForLocation
             
            $query = New-RscQueryMisc -Operation 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 105 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: Issue
             
            $query = New-RscQueryMisc -Operation 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 106 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: Issues
             
            $query = New-RscQueryMisc -Operation 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 107 -------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Misc
            # API Operation: IssuesJobIds
             
            $query = New-RscQueryMisc -Operation 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 108 -------------------------</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation AvailabilityGroupDatabaseVirtualGroups
             
            # OPTIONAL
            $query.Var.first = $someInt
            # OPTIONAL
            $query.Var.after = $someString
            # REQUIRED
            $query.Var.fids = @(
                $someString
            )
            # OPTIONAL
            $query.Var.filters = @(
                @{
                    # OPTIONAL
                    field = $someMssqlAvailabilityGroupDatabaseVirtualGroupFilterField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlAvailabilityGroupDatabaseVirtualGroupFilterField]) for enum values.
                    # OPTIONAL
                    texts = @(
                        $someString
                    )
            }
            )
            # OPTIONAL
            $query.Var.sortBy = @{
                # OPTIONAL
                field = $someMssqlAvailabilityGroupDatabaseVirtualGroupSortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlAvailabilityGroupDatabaseVirtualGroupSortByField]) 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: 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 11 operations in the 'NAS' API domain: CloudDirectNasSystem, CloudDirectNasSystems, Fileset, Namespace, Namespaces, Share, Shares, 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 11 operations in the 'NAS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CloudDirectNasSystem, CloudDirectNasSystems, Fileset, Namespace, Namespaces, Share, Shares, 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 -CloudDirectNasSystem).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 -CloudDirectNasSystem).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">CloudDirectNasSystem</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">CloudDirectNasSystems</command:parameterValue>
            <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">Shares</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: CloudDirectNasSystem
             
            $query = New-RscQueryNas -Operation CloudDirectNasSystem
             
            # REQUIRED
            $query.Var.fid = $someString
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CloudDirectNasSystem</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectNasSystem 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: CloudDirectNasSystems
             
            $query = New-RscQueryNas -Operation CloudDirectNasSystems
             
            # 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: CloudDirectNasSystemConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CloudDirectNasSystems 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: Fileset
             
            $query = New-RscQueryNas -Operation 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 4 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nas
            # API Operation: Namespace
             
            $query = New-RscQueryNas -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nas
            # API Operation: Namespaces
             
            $query = New-RscQueryNas -Operation 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 6 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nas
            # API Operation: Share
             
            $query = New-RscQueryNas -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nas
            # API Operation: Shares
             
            $query = New-RscQueryNas -Operation 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: NasShareConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the Shares 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: System
             
            $query = New-RscQueryNas -Operation 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 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nas
            # API Operation: Systems
             
            $query = New-RscQueryNas -Operation 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 10 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nas
            # API Operation: TopLevelDescendants
             
            $query = New-RscQueryNas -Operation 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 11 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Nas
            # API Operation: Volume
             
            $query = New-RscQueryNas -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation PdbDetails
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                id = $someString
                # REQUIRED
                pdbDetailsRequest = @{
                    # REQUIRED
                    recoveryPoint = @{
                        # OPTIONAL
                        snapshotId = $someString
                        # OPTIONAL
                        timestampMs = $someInt64
                        # OPTIONAL
                        scn = $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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 9 operations in the 'Policy' API domain: CustomTprPolicies, IsValidTprPolicyName, OrgSecurityPolicy, PasswordComplexityPolicy, Policies, Policy, PolicyObjectUsages, TopRiskPolicySummaries, or TprPolicyDetail.</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 9 operations in the 'Policy' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CustomTprPolicies, IsValidTprPolicyName, OrgSecurityPolicy, PasswordComplexityPolicy, Policies, Policy, PolicyObjectUsages, TopRiskPolicySummaries, or TprPolicyDetail. 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 -CustomTprPolicies).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 -CustomTprPolicies).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">CustomTprPolicies</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">IsValidTprPolicyName</command:parameterValue>
            <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:parameterValue required="false" command:variableLength="false">TprPolicyDetail</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: CustomTprPolicies
             
            $query = New-RscQueryPolicy -Operation CustomTprPolicies
             
            # OPTIONAL
            $query.Var.first = $someInt
            # OPTIONAL
            $query.Var.after = $someString
            # OPTIONAL
            $query.Var.last = $someInt
            # OPTIONAL
            $query.Var.before = $someString
            # OPTIONAL
            $query.Var.sortBy = $someTprPolicySortByField # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TprPolicySortByField]) for enum values.
            # OPTIONAL
            $query.Var.sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values.
            # OPTIONAL
            $query.Var.filter = @{
                # OPTIONAL
                policyName = $someString
                # OPTIONAL
                policyIds = @(
                    $someString
                )
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CustomTprPolicyConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the CustomTprPolicies 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: IsValidTprPolicyName
             
            $query = New-RscQueryPolicy -Operation IsValidTprPolicyName
             
            # REQUIRED
            $query.Var.tprPolicyName = $someString
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: System.Boolean</dev:code>
        <dev:remarks>
          <maml:para>Runs the IsValidTprPolicyName 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: OrgSecurityPolicy
             
            $query = New-RscQueryPolicy -Operation 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 4 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: PasswordComplexityPolicy
             
            $query = New-RscQueryPolicy -Operation 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 5 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: Policies
             
            $query = New-RscQueryPolicy -Operation 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 6 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: Policy
             
            $query = New-RscQueryPolicy -Operation 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 7 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: PolicyObjectUsages
             
            $query = New-RscQueryPolicy -Operation 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 8 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: TopRiskPolicySummaries
             
            $query = New-RscQueryPolicy -Operation 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:example>
        <maml:title>-------------------------- Example 9 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Policy
            # API Operation: TprPolicyDetail
             
            $query = New-RscQueryPolicy -Operation TprPolicyDetail
             
            # REQUIRED
            $query.Var.tprPolicyId = $someString
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: TprPolicyDetail</dev:code>
        <dev:remarks>
          <maml:para>Runs the TprPolicyDetail 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation SearchVersionedFiles
             
            # OPTIONAL
            $query.Var.first = $someInt
            # OPTIONAL
            $query.Var.after = $someString
            # REQUIRED
            $query.Var.snappableFid = $someString
            # REQUIRED
            $query.Var.searchQuery = $someString
            # OPTIONAL
            $query.Var.usePrefixSearch = $someBoolean
             
            # 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 -Operation 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
                    # OPTIONAL
                    isArchived = $someBoolean
                    # 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 -Operation 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 22 operations in the 'Snapshot' API domain: BrowseFileList, ClosestToPointInTime, EmailSearch, EventSearch, FilesDelta, FilesDeltaV2, Fileset, FilesetFiles, LegalHoldSnappable, OnedriveSearch, Polaris, Pvcs, QuarantinedDetails, Results, SOfCloudDirectShare, 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 22 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, SOfCloudDirectShare, 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">SOfCloudDirectShare</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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: SOfCloudDirectShare
             
            $query = New-RscQuerySnapshot -Operation SOfCloudDirectShare
             
            # 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
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: CloudDirectSnapshotConnection</dev:code>
        <dev:remarks>
          <maml:para>Runs the SOfCloudDirectShare 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: SnappableList
             
            $query = New-RscQuerySnapshot -Operation 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 17 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Snapshot
            # API Operation: SnappablesList
             
            $query = New-RscQuerySnapshot -Operation 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 18 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Snapshot
            # API Operation: SnappablesWithLegalHoldsSummary
             
            $query = New-RscQuerySnapshot -Operation 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 19 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Snapshot
            # API Operation: Snapshot
             
            $query = New-RscQuerySnapshot -Operation 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 20 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Snapshot
            # API Operation: UnmanagedObject
             
            $query = New-RscQuerySnapshot -Operation 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 21 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Snapshot
            # API Operation: VappInstantRecoveryOptions
             
            $query = New-RscQuerySnapshot -Operation 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 22 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Snapshot
            # API Operation: VappTemplateExportOptions
             
            $query = New-RscQuerySnapshot -Operation 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 -Operation 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
              
              
              
              
            PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Snmp
            # API Operation: Configurations
             
            $query = New-RscQuerySnmp -Operation 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 -Operation 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 -Operation 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 -Operation StorageArray
              
             # REQUIRED
             $query.Var.input = @(
                 $someString
             )
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: AllStorageArraysReply
              
              
              
              
            PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: StorageArray
            # API Operation: StorageArray
             
            $query = New-RscQueryStorageArray -Operation 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 -Operation ExportRules
              
             # REQUIRED
             $query.Var.input = @{
                 # REQUIRED
                 clusterUuid = $someString
             }
              
             # Execute the query
              
             $result = $query | Invoke-Rsc
              
             Write-Host $result.GetType().Name # prints: SyslogExportRuleSummaryListResponse
              
              
              
              
            PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Syslog
            # API Operation: ExportRules
             
            $query = New-RscQuerySyslog -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 25 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, TopLevelRecoveryTargets, 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 25 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, TopLevelRecoveryTargets, 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">TopLevelRecoveryTargets</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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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.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 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 -Operation 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 -Operation 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 -Operation 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: TopLevelRecoveryTargets
             
            $query = New-RscQueryVsphere -Operation TopLevelRecoveryTargets
             
            # 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 TopLevelRecoveryTargets 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: VmsByFids
             
            $query = New-RscQueryVsphere -Operation 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 25 --------------------------</maml:title>
        <dev:code>PS &gt;
            
             
            # Create an RscQuery object for:
            # API Domain: Vsphere
            # API Operation: VmwareCdpLiveInfo
             
            $query = New-RscQueryVsphere -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 -Operation 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 5 operations in the 'Webhook' API domain: ById, MessageTemplateById, MessageTemplates, V2, or 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 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: ById, MessageTemplateById, MessageTemplates, V2, or 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 -ById).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 -ById).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">ById</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MessageTemplateById</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">MessageTemplates</command:parameterValue>
            <command:parameterValue required="false" command:variableLength="false">V2</command:parameterValue>
            <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: ById
             
            $query = New-RscQueryWebhook -Operation ById
             
            # REQUIRED
            $query.Var.input = $someInt
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: WebhookV2</dev:code>
        <dev:remarks>
          <maml:para>Runs the ById 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: MessageTemplateById
             
            $query = New-RscQueryWebhook -Operation MessageTemplateById
             
            # REQUIRED
            $query.Var.input = $someInt
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: WebhookMessageTemplate</dev:code>
        <dev:remarks>
          <maml:para>Runs the MessageTemplateById 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: MessageTemplates
             
            $query = New-RscQueryWebhook -Operation MessageTemplates
             
            # REQUIRED
            $query.Var.input = @{
                # REQUIRED
                recordType = $someTemplateRecordType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TemplateRecordType]) for enum values.
            }
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: List&lt;WebhookMessageTemplate&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the MessageTemplates 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: V2
             
            $query = New-RscQueryWebhook -Operation V2
             
            # No variables for this query.
             
            # Execute the query
             
            $result = $query | Invoke-Rsc
             
            Write-Host $result.GetType().Name # prints: List&lt;WebhookV2&gt;</dev:code>
        <dev:remarks>
          <maml:para>Runs the V2 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: Webhook
             
            $query = New-RscQueryWebhook -Operation 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>