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:\> {{ 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, 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, 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> 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> 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>Return a valid empty .NET object for the RubrikSecurityCloud.PowerShell SDK</maml:para> </maml:description> </command:details> <maml:description> <maml:para>Return a valid empty .NET object for the RubrikSecurityCloud.PowerShell SDK. The cmdlet will return a .NET object by name. The -ListAvailable parameter will return a list of valid RubrikSecurityCloud.Types.</maml:para> </maml:description> <command:syntax> <command:syntaxItem> <maml:name>Get-RscType</maml:name> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none"> <maml:name>ListAvailable</maml:name> <maml:description> <maml:para>Used to request a list of valid Rsc Type Names.</maml:para> </maml:description> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none"> <maml:name>FilterByName</maml:name> <maml:description> <maml:para>Optional to filter results by name.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none"> <maml:name>Interfaces</maml:name> <maml:description> <maml:para>Flag to specify if interfaces should be returned.</maml:para> </maml:description> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:syntaxItem> <command:syntaxItem> <maml:name>Get-RscType</maml:name> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none"> <maml:name>Name</maml:name> <maml:description> <maml:para>The name of the Rsc Type to return</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none"> <maml:name>InitialProperties</maml:name> <maml:description> <maml:para>Specify an array of string containing the names of the properties to initialize.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none"> <maml:name>InitialValues</maml:name> <maml:description> <maml:para>Specify a hashtable mapping the requested fields to their values.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Hashtable</command:parameterValue> <dev:type> <maml:name>Hashtable</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:syntaxItem> <command:syntaxItem> <maml:name>Get-RscType</maml:name> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none"> <maml:name>Interface</maml:name> <maml:description> <maml:para>Used to request a list of types implementing a given interface.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:syntaxItem> </command:syntax> <command:parameters> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none"> <maml:name>FilterByName</maml:name> <maml:description> <maml:para>Optional to filter results by name.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="1" aliases="none"> <maml:name>InitialProperties</maml:name> <maml:description> <maml:para>Specify an array of string containing the names of the properties to initialize.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="2" aliases="none"> <maml:name>InitialValues</maml:name> <maml:description> <maml:para>Specify a hashtable mapping the requested fields to their values.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Hashtable</command:parameterValue> <dev:type> <maml:name>Hashtable</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none"> <maml:name>Interface</maml:name> <maml:description> <maml:para>Used to request a list of types implementing a given interface.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="3" aliases="none"> <maml:name>Interfaces</maml:name> <maml:description> <maml:para>Flag to specify if interfaces should be returned.</maml:para> </maml:description> <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="0" aliases="none"> <maml:name>ListAvailable</maml:name> <maml:description> <maml:para>Used to request a list of valid Rsc Type Names.</maml:para> </maml:description> <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="0" aliases="none"> <maml:name>Name</maml:name> <maml:description> <maml:para>The name of the Rsc Type to return</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:parameters> <command:inputTypes> <command:inputType> <dev:type> <maml:name>System.String</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> </command:inputTypes> <command:returnValues> <command:returnValue> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:returnValue> </command:returnValues> <maml:alertSet> <maml:alert> <maml:para></maml:para> </maml:alert> </maml:alertSet> <command:examples> <command:example> <maml:title>-------------------------- Example 1 --------------------------</maml:title> <dev:code>PS C:\> Get-RscType -ListAvailable</dev:code> <dev:remarks> <maml:para>Get a list of all available Rsc .NET types</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 2 --------------------------</maml:title> <dev:code>PS C:\> Get-RscType -ListAvailable -FilterByName "accountsetting"</dev:code> <dev:remarks> <maml:para>Get a list of available Rsc .NET types filtered by name</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 3 --------------------------</maml:title> <dev:code>PS C:\> Get-RscType -Name "AccountSetting"</dev:code> <dev:remarks> <maml:para>Get an empty object that is compliant with the Rsc Type specified by name</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 4 --------------------------</maml:title> <dev:code>PS C:\> Get-RscType -Name "AccountSetting" -InitialProperties @("IsEulaAccepted")</dev:code> <dev:remarks> <maml:para>Get an empty object that is compliant with the Rsc Type specified by name. Initialize the 'IsEulaAccepted' property</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 5 --------------------------</maml:title> <dev:code>PS C:\> Get-RscType -Name "AccountSetting" -InitialValues @{"IsEulaAccepted"= $false}</dev:code> <dev:remarks> <maml:para>Get an empty object that is compliant with the Rsc Type specified by name. Initialize the 'IsEulaAccepted' property with a specific value.</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 6 --------------------------</maml:title> <dev:code>PS C:\> Get-RscType -ListAvailable -Interfaces</dev:code> <dev:remarks> <maml:para>Get a list of all available Rsc .NET Interfaces</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 7 --------------------------</maml:title> <dev:code>PS C:\> Get-RscType -ListAvailable -Interfaces -FilterByName "mssql"</dev:code> <dev:remarks> <maml:para>Get a list of all available Rsc .NET Interfaces filtered by name</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 8 --------------------------</maml:title> <dev:code>PS C:\> 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, 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<CreateOnDemandJobReply></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 } } } # 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 > # 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 > # 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 > # 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 > # 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 > # 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 ) } # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 } ) } # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 } # 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 > # 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 } # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<CreateOnDemandJobReply></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<CreateOnDemandJobReply></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 > # 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<CreateOnDemandJobReply></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 > # 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<CreateOnDemandJobReply></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 > # 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<CreateOnDemandJobReply></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 148 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, 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 148 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, 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">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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<UpgradeJobReplyWithUuid></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<DownloadPackageReplyWithUuid></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 > # 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 > # 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 > # 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<UpgradeJobReplyWithUuid></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 118 -------------------------</maml:title> <dev:code>PS > # 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 119 -------------------------</maml:title> <dev:code>PS > # 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 120 -------------------------</maml:title> <dev:code>PS > # 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 121 -------------------------</maml:title> <dev:code>PS > # 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 122 -------------------------</maml:title> <dev:code>PS > # 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 123 -------------------------</maml:title> <dev:code>PS > # 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 124 -------------------------</maml:title> <dev:code>PS > # 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 125 -------------------------</maml:title> <dev:code>PS > # 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 126 -------------------------</maml:title> <dev:code>PS > # 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 127 -------------------------</maml:title> <dev:code>PS > # 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 128 -------------------------</maml:title> <dev:code>PS > # 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 129 -------------------------</maml:title> <dev:code>PS > # 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 130 -------------------------</maml:title> <dev:code>PS > # 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 131 -------------------------</maml:title> <dev:code>PS > # 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 132 -------------------------</maml:title> <dev:code>PS > # 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 133 -------------------------</maml:title> <dev:code>PS > # 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 134 -------------------------</maml:title> <dev:code>PS > # 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 135 -------------------------</maml:title> <dev:code>PS > # 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 136 -------------------------</maml:title> <dev:code>PS > # 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 137 -------------------------</maml:title> <dev:code>PS > # 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 138 -------------------------</maml:title> <dev:code>PS > # 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 139 -------------------------</maml:title> <dev:code>PS > # 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 140 -------------------------</maml:title> <dev:code>PS > # 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 141 -------------------------</maml:title> <dev:code>PS > # 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 142 -------------------------</maml:title> <dev:code>PS > # 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 143 -------------------------</maml:title> <dev:code>PS > # 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 144 -------------------------</maml:title> <dev:code>PS > # 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 145 -------------------------</maml:title> <dev:code>PS > # 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 146 -------------------------</maml:title> <dev:code>PS > # 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 147 -------------------------</maml:title> <dev:code>PS > # 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 148 -------------------------</maml:title> <dev:code>PS > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<CreateOnDemandJobReply></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<CreateOnDemandJobReply></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<System.String></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 > # 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 > # 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 > # 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<System.String></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<Target></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<SlaAssignResult></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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>{{ Fill in the Synopsis }}</maml:para> </maml:description> </command:details> <maml:description> <maml:para>{{ Fill in the Description }}</maml:para> </maml:description> <command:syntax> <command:syntaxItem> <maml:name>New-RscMutationSyslog</maml:name> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none"> <maml:name>Operation</maml:name> <maml:description> <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para> </maml:description> <command:parameterValueGroup> <command:parameterValue required="false" command:variableLength="false">AddExportRule</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DeleteExportRule</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TestExportRule</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UpdateExportRule</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValueGroup> <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:syntaxItem> </command:syntax> <command:parameters> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none"> <maml:name>Operation</maml:name> <maml:description> <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:parameters> <command:inputTypes> <command:inputType> <dev:type> <maml:name>System.String</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>RubrikSecurityCloud.RscQuery</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> </command:inputTypes> <command:returnValues> <command:returnValue> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:returnValue> </command:returnValues> <maml:alertSet> <maml:alert> <maml:para></maml:para> </maml:alert> </maml:alertSet> <command:examples> <command:example> <maml:title>-------------------------- Example 1 --------------------------</maml:title> <dev:code>PS C:\> {{ Add example code here }}</dev:code> <dev:remarks> <maml:para>{{ Add example description here }}</maml:para> </dev:remarks> </command:example> </command:examples> <command:relatedLinks /> </command:command> <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp"> <command:details> <command:name>New-RscMutationTape</command:name> <command:verb>New</command:verb> <command:noun>RscMutationTape</command:noun> <maml:description> <maml:para>Create a new RscQuery object for any of the 3 operations in the 'Tape' API domain: CreateReaderTarget, CreateTarget, or UpdateTarget.</maml:para> </maml:description> </command:details> <maml:description> <maml:para>New-RscMutationTape creates a new mutation object for operations in the 'Tape' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 3 operations in the 'Tape' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: CreateReaderTarget, CreateTarget, or UpdateTarget. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationTape -CreateReaderTarget).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationTape -CreateReaderTarget).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:syntax> <command:syntaxItem> <maml:name>New-RscMutationTape</maml:name> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none"> <maml:name>Operation</maml:name> <maml:description> <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para> </maml:description> <command:parameterValueGroup> <command:parameterValue required="false" command:variableLength="false">CreateReaderTarget</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CreateTarget</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UpdateTarget</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValueGroup> <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:syntaxItem> </command:syntax> <command:parameters> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none"> <maml:name>Operation</maml:name> <maml:description> <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:parameters> <command:inputTypes> <command:inputType> <dev:type> <maml:name>System.String</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>RubrikSecurityCloud.RscQuery</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> </command:inputTypes> <command:returnValues> <command:returnValue> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:returnValue> </command:returnValues> <maml:alertSet> <maml:alert> <maml:para></maml:para> </maml:alert> </maml:alertSet> <command:examples> <command:example> <maml:title>-------------------------- Example 1 --------------------------</maml:title> <dev:code>PS > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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, 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<User></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 > # 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<AccountProduct></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 > # 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 > # 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<User></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 8 operations in the 'Archival' API domain: HierarchyObjectRecoveryTarget, IsTotpMandatoryInTargetVersion, RcsLocationsConsumptionStats, StorageUsage, Target, TargetMapping, TargetMappings, or Targets.</maml:para> </maml:description> </command:details> <maml:description> <maml:para>New-RscQueryArchival creates a new query object for operations in the 'Archival' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 8 operations in the 'Archival' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: HierarchyObjectRecoveryTarget, IsTotpMandatoryInTargetVersion, RcsLocationsConsumptionStats, StorageUsage, Target, TargetMapping, TargetMappings, or Targets. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscQueryArchival -HierarchyObjectRecoveryTarget).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscQueryArchival -HierarchyObjectRecoveryTarget).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:syntax> <command:syntaxItem> <maml:name>New-RscQueryArchival</maml:name> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none"> <maml:name>Operation</maml:name> <maml:description> <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para> </maml:description> <command:parameterValueGroup> <command:parameterValue required="false" command:variableLength="false">HierarchyObjectRecoveryTarget</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsTotpMandatoryInTargetVersion</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">RcsLocationsConsumptionStats</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">StorageUsage</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Target</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TargetMapping</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TargetMappings</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Targets</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValueGroup> <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:syntaxItem> </command:syntax> <command:parameters> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none"> <maml:name>Operation</maml:name> <maml:description> <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:parameters> <command:inputTypes> <command:inputType> <dev:type> <maml:name>System.String</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>RubrikSecurityCloud.RscQuery</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> </command:inputTypes> <command:returnValues> <command:returnValue> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:returnValue> </command:returnValues> <maml:alertSet> <maml:alert> <maml:para></maml:para> </maml:alert> </maml:alertSet> <command:examples> <command:example> <maml:title>-------------------------- Example 1 --------------------------</maml:title> <dev:code>PS > # 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 2 --------------------------</maml:title> <dev:code>PS > # 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 3 --------------------------</maml:title> <dev:code>PS > # 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 4 --------------------------</maml:title> <dev:code>PS > # 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<ArchivalStorageUsage></dev:code> <dev:remarks> <maml:para>Runs the StorageUsage operation of the 'Archival' API domain.</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 5 --------------------------</maml:title> <dev:code>PS > # 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 6 --------------------------</maml:title> <dev:code>PS > # 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 7 --------------------------</maml:title> <dev:code>PS > # 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<TargetMapping></dev:code> <dev:remarks> <maml:para>Runs the TargetMappings operation of the 'Archival' API domain.</maml:para> </dev:remarks> </command:example> <command:example> <maml:title>-------------------------- Example 8 --------------------------</maml:title> <dev:code>PS > # 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 > # 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 > # 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<System.String></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 > # 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<AwsCdmVersion></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 > # 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<AwsFeatureConfig></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 > # 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 > # 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 > # 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 > # 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 > # 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<AwsCloudAccountWithFeatures></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 > # 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 > # 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<DbParameterGroup></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 > # 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<SubnetGroup></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 > # 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<System.String></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 > # 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<AwsExocomputeConfig></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 > # 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 > # 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<System.String></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 > # 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 > # 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<KmsEncryptionKey></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 > # 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<OptionGroup></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 > # 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<PermissionPolicy></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 > # 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 > # 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<AwsCloudAccountRegion></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 > # 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 > # 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<System.String></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 > # 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<S3BucketDetails></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 > # 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<System.String></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 > # 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<System.String></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 > # 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 > # 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 > # 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<AwsVpc></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 > # 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<AwsVpc></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<AzureArmTemplateByFeature></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 > # 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<AzureCloudAccountRegion></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 > # 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<System.String></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 > # 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<System.String></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 > # 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 > # 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<AzureCdmVersion></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 > # 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 > # 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 > # 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<AzureSubscriptionMissingPermissions></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 > # 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 > # 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<AzureNativeSubnet></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 > # 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 > # 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<AzureSubscriptionWithFeaturesType></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 > # 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 > # 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 > # 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<AzureCloudAccountTenant></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 > # 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<AzureNativeDiskEncryptionSet></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 > # 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<AzureEncryptionKey></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 > # 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<AzureExocomputeConfigsInAccount></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 > # 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 > # 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 > # 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 > # 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<AzureKeyVault></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 > # 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<AzureManagedIdentity></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 > # 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<System.String></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 > # 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 > # 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<AzureLocationDetailType></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 > # 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 > # 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<AzureResourceGroup></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 > # 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 > # 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 > # 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 > # 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 > # 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<AzureSqlDatabaseServerElasticPool></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<AzureStorageAccountCcprovision></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 > # 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 > # 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<AzureSubscriptionWithExocomputeMapping></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 > # 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 > # 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 > # 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 > # 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 > # 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<AzureNativeAvailabilitySet></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 > # 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 > # 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<AzureNativeExportCompatibleDiskTypes></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 > # 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<AzureNativeExportCompatibleVmSizes></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<AzureResourceGroupInfo></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 > # 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 > # 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<AzureNativeSecurityGroup></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 > # 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<AzureNativeStorageAccount></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 > # 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<AzureNativeSubnet></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<System.String></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 > # 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 > # 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<AzureNativeVirtualNetwork></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<CloudAccount></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 > # 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<CloudAccountFeaturePermission></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 > # 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<CloudAccountsExocomputeAccountMapping></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 > # 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<AwsIamPairsWithMissingPermission></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 > # 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<CloudAccountFeaturePermission></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 > # 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<CloudAccountWithExocomputeMapping></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<System.String></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 > # 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 > # 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<System.String></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 > # 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 > # 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<System.String></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<System.String></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 > # 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 > # 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<System.String></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<DataLocationSupportedCluster></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<ClusterReplicationTarget></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 > # 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 > # 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<System.Boolean></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 > # 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<GroupCount></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 > # 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 > # 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 > # 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<ClusterWebCertAndIpmi></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<GroupCount></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<GcpCloudAccountMissingPermissionsForAddition></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 > # 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<GcpCloudAccountProjectDetail></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 > # 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<GcpCloudAccountProjectForOauth></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 > # 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<GcpPermission></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 > # 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 > # 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<GcpNativeKmsCryptoKey></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 > # 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<System.String></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 > # 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<GcpNativeNetwork></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 > # 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<NetworkHostProject></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 > # 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<GcpNativeRegion></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 > # 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<System.String></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 > # 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<System.String></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 > # 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<System.String></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 > # 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<System.String></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 > # 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<System.String></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 > # 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<System.String></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<ReplicatedSnapshotInfo></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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>{{ Fill in the Synopsis }}</maml:para> </maml:description> </command:details> <maml:description> <maml:para>{{ Fill in the Description }}</maml:para> </maml:description> <command:syntax> <command:syntaxItem> <maml:name>New-RscQueryMisc</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">ActiveCustomAnalyzers</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AdGroupMembers</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AdVolumeExports</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AgentDeploymentSetting</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AgentDeploymentSettings</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AllowedOrgAdminOperations</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AnalyzerGroups</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AnalyzerUsages</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AnomalyResultOpt</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AnomalyResults</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AnomalyResultsGrouped</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AreMultiGeoBackupsEnabled</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AuthorizationsForGlobalResource</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AuthorizationsForObject</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AuthorizationsForObjects</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AwsComputeSettings</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AzureResourceGroups</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">AzureSubnets</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">BackupThrottleSettings</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">BrowseCalendar</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">BrowseContacts</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">BrowseFolder</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">BrowseOnedrive</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">BrowseTeamsChannels</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">BrowseTeamsDrive</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CdmGuestCredentials</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CdmInventorySubHierarchyRoot</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CdmOvaDetails</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CdmVersionCheck</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CdpVmsInfos</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CheckCloudComputeConnectivityJobProgress</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CheckLatestVersionMgmtAppExists</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CloudDirectNasExport</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CloudDirectNasNamespace</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CloudDirectNasNamespaces</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CloudDirectNasShare</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CloudDirectShares</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CloudDirectSites</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CloudDirectSystems</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ConfiguredGroupMembers</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Crawl</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Crawls</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CrossAccountPairs</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CurrentIpAddress</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CurrentOrg</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CurrentOrgAuthDomainConfig</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CurrentOrgIdentityProviders</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CustomAnalyzer</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DashboardSummary</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DatagovSecDesc</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DecryptExportUrl</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DeploymentIpAddresses</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DeploymentVersion</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DhrcActiveRecommendations</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DhrcLatestMetrics</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DhrcScores</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DiffFmd</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DiscoverNodes</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DiscoveryTimeline</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DistributionListDigest</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DistributionListDigests</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DummyFieldWithAdminOnlyTag</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">EdgeWindowsToolLink</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">EffectiveRbacPermissions</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">EventDigests</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ExternalDeploymentName</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">FailedRestoreItemsInfo</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">FederatedLoginStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">FileActivities</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GeoLocationList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetAllRolesInOrgList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetCdmReleaseDetailsForVersionFromSupportPortal</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetCdmReleaseDetailsFromSupportPortal</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetGroupCountByPrechecksStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetGroupCountByUpgradeJobStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetGroupCountByVersionStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetKorgTaskchainStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetPermissions</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetRolesByIds</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GetUserDownloads</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GlobalFileSearch</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GlobalLockoutConfig</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GlobalMfaSetting</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GlobalSearchResults</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GroupsInCurrentAndDescendantOrganization</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GuestCredentials</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">GuestCredentialsV2</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">HasIdpConfigured</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">HelpContentSnippets</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">HierarchyObject</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">HierarchyObjects</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">InstalledVersionList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">InventoryRoot</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">InventorySubHierarchyRoot</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">InventoryWorkloads</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">InvestigationCsvDownloadLink</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IpWhitelist</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsIpmiEnabled</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsLoggedIntoRubrikSupportPortal</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsReplaceNodeTprConfigured</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsSfdcReachable</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsUpgradeAvailable</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsUpgradeRecommended</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IsZrsAvailableForLocation</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Issue</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Issues</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">IssuesJobIds</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">JobInfo</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">KnowledgeBaseArticle</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">LambdaSettings</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">LicensedProducts</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">LockoutConfig</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">MaxProtectedAppsCount</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">MfaSetting</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">MicrosoftSites</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">MinimumCdmVersionForFeatureSet</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">MipLabels</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">NetworkThrottle</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">NfAnomalyResults</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">NfAnomalyResultsGrouped</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">NodeRemovalCancelPermission</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">NodeToReplace</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">NodeTunnelStatuses</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">NosqlStorageLocations</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">OauthCodesForEdgeReg</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ObjectFiles</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ObjectTypeAccessSummary</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ObjectsAlreadyAssignedToOrgs</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Org</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Orgs</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">OrgsByIds</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">OrgsForPrincipal</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PasskeyConfig</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PasskeyInfo</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PendingAction</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PendingActions</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PhoenixRolloutProgress</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PipelineHealthForTimeRange</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PolarisInventorySubHierarchyRoot</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PolicyDetails</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PolicyObj</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PolicyObjs</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PrechecksStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PrechecksStatusWithNextJobInfo</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">PrivateContainerRegistry</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ProductDocumentation</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ProtectedObjectsList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ProtectedVolumesCount</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">QuarantinedDetailsForWorkload</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">QueryDatastoreFreespaceThresholds</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">RemovedNodeDetails</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">RoleTemplates</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">RscPermsToCdmInfo</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">SearchFileByPrefix</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">SnoozedDirectories</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">SsoGroupAlreadyExists</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">SupportBundle</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">SupportUserAccesses</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TableFilters</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Targets</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TaskDetailGroupByList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TaskDetailList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">Taskchain</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TeamChannelNameAvailable</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TotpConfigStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TprConfiguration</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TprPublicConfiguration</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TprRequestDetail</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TprRequestSummaries</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TprRoleEligibility</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TprRulesMap</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TprStatusForNodeRemoval</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">TunnelStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UniqueVcdCount</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UnmanagedObjects</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UnmanagedObjectsSupportedTypes</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UpgradeStatus</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserActivities</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserAlreadyExists</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserAnalyzerAccess</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserAuditList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserDetail</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserFile</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserFiles</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserGroups</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserNotifications</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserSessionManagementConfig</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UserSettings</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UsersInCurrentAndDescendantOrganization</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">UsersOnAccountList</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">ValidateOrgName</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">VcdVappVms</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">VerifyTotp</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">VirtualMachineFiles</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">VmRecoveryJobsInfo</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">VolumeGroupMounts</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">WorkloadAlertSetting</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">WorkloadAnomalies</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">WorkloadForeverId</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValueGroup> <command:parameterValue required="false" command:variableLength="false">UNSET</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">EMPTY</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DEFAULT</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">DETAIL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">FULL</command:parameterValue> <command:parameterValue required="false" command:variableLength="false">CUSTOM</command:parameterValue> </command:parameterValueGroup> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:syntaxItem> </command:syntax> <command:parameters> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>AddField</maml:name> <maml:description> <maml:para>Add fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Copy</maml:name> <maml:description> <maml:para>Start off by copying another query before altering it with -Var, -AddField, -RemoveField and -FilePatch.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">RscQuery</command:parameterValue> <dev:type> <maml:name>RscQuery</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="named" aliases="none"> <maml:name>Field</maml:name> <maml:description> <maml:para>Fields to select for retrieval. Unlike -AddField and -RemoveField where fields are specified as dotted strings (e.g. 'nodes.id'), this parameter expects an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet. You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FieldProfile</maml:name> <maml:description> <maml:para>Field profile. Determines what fields should be selected for retrieval when no -Field object is given. If -FieldProfile is not given and -Field is not given either, the default profile is used.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Profile</command:parameterValue> <dev:type> <maml:name>Profile</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>FilePatch</maml:name> <maml:description> <maml:para>Patch the field specification with field names from a file. Each line in the file is a field name. If the line starts with a '-', the field is removed from the field spec. If the line does not start with a '-', the field is added to the field specification.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="0" aliases="none"> <maml:name>Operation</maml:name> <maml:description> <maml:para>API Operation. The set of operations depends on the API domain. See reference at: https://github.com/rubrikinc/rubrik-powershell-sdk/blob/main/docs/domains_and_operations.md</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String</command:parameterValue> <dev:type> <maml:name>String</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>RemoveField</maml:name> <maml:description> <maml:para>remove fields to the set of fields that are selected for retrieval.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">String[]</command:parameterValue> <dev:type> <maml:name>String[]</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="none"> <maml:name>ValidPatchSet</maml:name> <maml:description> <maml:para>Introspection utility: if -ValidPatchSet is given, no query object is returned, but instead, the cmdlet outputs the 'valid patch set' (that is, what field names can be given to -AddField and -RemoveField).</maml:para> </maml:description> <command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue> <dev:type> <maml:name>SwitchParameter</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>False</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName, ByValue)" position="1" aliases="none"> <maml:name>Var</maml:name> <maml:description> <maml:para>Operation variables. The set of variables to use depends on the operation. Call Info() on the object this cmdlet returns to see the variables for the operation. If -Var is not given, all variables are null. Specify the variable with a hash table, e.g. @{id = "123"}. The keys of the hash table are the variable names, and are case-insensitive. Simple types like ints and strings can be specified directly. The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify complex types. You can use Get-RscType to create a new object of a given type.</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">Object</command:parameterValue> <dev:type> <maml:name>Object</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> <command:parameter required="false" variableLength="true" globbing="false" pipelineInput="False" position="named" aliases="proga"> <maml:name>ProgressAction</maml:name> <maml:description> <maml:para>{{ Fill ProgressAction Description }}</maml:para> </maml:description> <command:parameterValue required="true" variableLength="false">ActionPreference</command:parameterValue> <dev:type> <maml:name>ActionPreference</maml:name> <maml:uri /> </dev:type> <dev:defaultValue>None</dev:defaultValue> </command:parameter> </command:parameters> <command:inputTypes> <command:inputType> <dev:type> <maml:name>System.String</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>RubrikSecurityCloud.RscQuery</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> <command:inputType> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:inputType> </command:inputTypes> <command:returnValues> <command:returnValue> <dev:type> <maml:name>System.Object</maml:name> </dev:type> <maml:description> <maml:para></maml:para> </maml:description> </command:returnValue> </command:returnValues> <maml:alertSet> <maml:alert> <maml:para></maml:para> </maml:alert> </maml:alertSet> <command:examples> <command:example> <maml:title>-------------------------- Example 1 --------------------------</maml:title> <dev:code>PS C:\> {{ Add example code here }}</dev:code> <dev:remarks> <maml:para>{{ Add example description here }}</maml:para> </dev:remarks> </command:example> </command:examples> <command:relatedLinks /> </command:command> <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp"> <command:details> <command:name>New-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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<NcdObjectsOverTimeData></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 > # 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<NcdTaskData></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 > # 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<NcdUsageOverTimeData></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<AdGroup></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<O365OrgInfo></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<O365SubscriptionAppTypeCounts></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<PolicySummary></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<DetailedPrivateEndpointConnection></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<FullSpSiteExclusions></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 > # 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 > # 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 > # 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 > # 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 > # 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<SlaAuditDetail></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 > # 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 > # 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<SlaInfo></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 > # 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<HierarchyObject></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<NcdSlaComplianceData></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 > # 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<SlaDomain></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 > # 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 > # 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 > # 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 > # 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 > # 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<CdmHierarchySnappableNew></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<ClosestSnapshotSearchResult></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<PvcInformation></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 > # 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<QuarantineSpec></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<VcenterHotAddProxyVmInfo></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<VmwareCdpStateInfo></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<VsphereHost></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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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 > # 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<WebhookMessageTemplate></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 > # 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<WebhookV2></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 > # 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> |