net461/RubrikSecurityCloud.PowerShell.xml
<?xml version="1.0"?>
<doc> <assembly> <name>RubrikSecurityCloud.PowerShell</name> </assembly> <members> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Connect_Rsc"> <summary> Establishes a user session with Rubrik Security Cloud </summary> <description> 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. </description> <example> Connect to Rubrik Security Cloud, using the URL, Client Id and Client Secret <code>Connect-Rsc -Server mycompany.my.rubrik.com -ClientId xxxxxxxxx -ClientSecret xxxxxxxxx</code> </example> <example> 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. <code> Set-RscServiceAccountFile -InputFilePath rubrik_service_account.json Connect-Rsc </code> </example> <example> 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. <code> Set-RscServiceAccountFile -InputFilePath rubrik_service_account.json -OutputFilePath rubrik_service_account.xml Connect-Rsc -ServiceAccountFile rubrik_service_account.xml </code> </example> <example> 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. <code> Set-RscServiceAccountFile -InputFilePath rubrik_service_account.json -OutputFilePath $ENV:RSC_SERVICE_ACCOUNT_FILE Connect-Rsc -FromEnv </code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Connect_Rsc.IfNeeded"> <summary> Connect if there is no existing connection </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Connect_Rsc.FromEnv"> <summary> Use a service account, which path is stored in an environment variable </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Connect_Rsc.ServiceAccountFile"> <summary> Used to specify the service account file downloaded from Rubrik Security Cloud </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Connect_Rsc.Server"> <summary> 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 </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Connect_Rsc.ClientId"> <summary> The Service Account ClientId. This can be found as "client_id" in the JSON file downloaded from RSC when creating the Service Account </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Connect_Rsc.ClientSecret"> <summary> 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 </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscCmdlet"> <summary> Return info about SDK cmdlets </summary> <description> Look up a GraphQL Operation and return info about the cmdlet that implements it. </description> <example> Retrieve the name of the cmdlet that implements the GraphQL query clusterConnection <code> PS> Get-RscCmdlet clusterConnection </code> </example> <example> Retrieve info for a GraphQL operation that is not implemented by a cmdlet. <code> PS> Get-RscCmdlet notImplementedOperation </code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscCmdlet.ExistingGqlRootFieldName"> <summary> The name of the GraphQL Operation to look up. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscCmdlet.AnyGqlRootFieldName"> <summary> The name of the GraphQL Operation to look up. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscCmdlet.Locations"> <summary> Info about the various locations the SDK uses </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFileset"> <summary> Retrieve one or more filsets managed by Rubrik Security Cloud (Rsc). </summary> <description> 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 </description> <example> Get a list of all filesets on a specified host <code> Get-RscFileset -HostId xxxxx-xxxxx-xxxxx-xxxxx </code> </example> <example> Get a list of all filesets on a specified host, filtered by name <code> Get-RscFileset -HostId xxxxx-xxxxx-xxxxx-xxxxx -Name etc </code> </example> <example> Get a list of all filesets on a host, providing the host via the pipeline <code> Get-RscHost -OsType Linux -First 1 | Get-RscFileset </code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFileset.HostId"> <summary> The Id of the Physical Host to get filesets for </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFileset.Name"> <summary> Filter results by name </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFileset.First"> <summary> Return only the fist # of results </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFileset.SortBy"> <summary> Sort by field name </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFileset.SortOrder"> <summary> Sort Order </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFileset.FilesetId"> <summary> Get a fileset using its ID </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate"> <summary> Retrieve one or more filset templates managed by Rubrik Security Cloud (Rsc). </summary> <description> 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. </description> <example> Get a list of all Linux fileset templates. <code>Get-RscFilesetTemplate -OsType Linux </code> </example> <example> Get a list of Windows fileset templates, matching a name pattern. <code>Get-RscFilesetTemplate -OsType Windows -Name myWinTemplate</code> </example> <example> Get a template by Id, with default fields selected. <code>Get-RscFilesetTemplate -Id 76254be7-baa4-5145-a4b7-a7a7773ad97d</code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate.OsType"> <summary> Operating system type of fileset templates to return. Valid values are: "Windows" and "Linux". </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate.Name"> <summary> Filter results by name </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate.First"> <summary> Return only the fist # of results </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate.SortBy"> <summary> Sort by field name </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate.SortOrder"> <summary> Sort Order </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate.Id"> <summary> Get a physical host using its ID </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscFilesetTemplate.Field"> <summary> Activate selected fields based on not-null properties of the input fields object </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost"> <summary> Retrieve one or more physical hosts managed by Rubrik Security Cloud (Rsc). </summary> <description> 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. </description> <example> Get a list of all Linux from the RSC instance. <code>Get-RscHost -OsType Linux </code> </example> <example> Get a list of Windows Hosts, matching a name pattern. <code>Get-RscHost -OsType Windows -Name myWindowsServer</code> </example> <example> Get a host by Id, with default fields selected. <code>Get-RscHost -Id 76254be7-baa4-5145-a4b7-a7a7773ad97d</code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.OsType"> <summary> Operating system type of hosts to return. Valid values are "Windows" and "Linux". </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.Name"> <summary> Filter results by name </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.First"> <summary> Return only the fist # of results </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.Relics"> <summary> Include only items that are relics </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.Replicated"> <summary> Include only items that are replicated </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.SortBy"> <summary> Sort by field name </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.SortOrder"> <summary> Sort Order </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.IsBulkPolicyAssignmentFlow"> <summary> Indicates whether request is bulk policy assignment flow. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.Id"> <summary> Get a physical host using its ID </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscHost.Field"> <summary> Activate selected fields based on not-null properties of the input fields object </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscSnapshot"> <summary> Retrieves all of the snapshots (backups) for any given object </summary> <description> The Get-RscSnapshot cmdlet is used to query the RSC instance for all known snapshots (backups) for a protected object. Multiple objects to be piped into this function is not yet supported </description> <example> Get the snapshot list for an object by the object Id <code>Get-RscSnapshot -Id 'xxxxxx-xxxxx-xxxxxx-xxxxx'</code> </example> <example> Get the snapshots for vSphere VM from pipeline <code> $vm = Get-RscVsphereVm -Id xxxxxx-xxxxxx-xxxxxx-xxxxxx $vm | Get-RscSnapshot </code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscSnapshot.SnappableId"> <summary> The ID of the snappable object to get a list of snapshots for. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscSnapshot.First"> <summary> Return only the first # of results </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscSnapshot.SnapshotId"> <summary> Retreive a single CDM snapshot by ID. PolarisSnapshot is not yet supported. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscSnapshot.ClusterUUID"> <summary> Ensure that the snapshot returned belongs to a specific CDM Cluster. </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType"> <summary> Return a valid empty .NET object for the RubrikSecurityCloud.PowerShell SDK </summary> <description> 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. </description> <example> Get a list of all available Rsc .NET types <code> PS C:\> Get-RscType -ListAvailable </code> </example> <example> Get a list of available Rsc .NET types filtered by name <code> PS C:\> Get-RscType -ListAvailable -FilterByName "accountsetting" </code> </example> <example> Get an empty object that is compliant with the Rsc Type specified by name <code> PS C:\> Get-RscType -Name "AccountSetting" </code> </example> <example> Get an empty object that is compliant with the Rsc Type specified by name. Initialize the 'IsEulaAccepted' property <code> PS C:\> Get-RscType -Name "AccountSetting" -InitialProperties @("IsEulaAccepted") </code> </example> <example> Get an empty object that is compliant with the Rsc Type specified by name. Initialize the 'IsEulaAccepted' property with a specific value. <code> PS C:\> Get-RscType -Name "AccountSetting" -InitialValues @{"IsEulaAccepted"= $false} </code> </example> <example> Get a list of all available Rsc .NET Interfaces <code> PS C:\> Get-RscType -ListAvailable -Interfaces </code> </example> <example> Get a list of all available Rsc .NET Interfaces filtered by name <code> PS C:\> Get-RscType -ListAvailable -Interfaces -FilterByName "mssql" </code> </example> <example> Get a list of all Rsc .NET types that implement the MssqlTopLevelDescendantType interface <code> PS C:\> Get-RscType -Interface MssqlTopLevelDescendantType </code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType.Name"> <summary> The name of the Rsc Type to return </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType.InitialProperties"> <summary> Specify an array of string containing the names of the properties to initialize. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType.InitialValues"> <summary> Specify a hashtable mapping the requested fields to their values. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType.ListAvailable"> <summary> Used to request a list of valid Rsc Type Names. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType.FilterByName"> <summary> Optional to filter results by name. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType.Interfaces"> <summary> Flag to specify if interfaces should be returned. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscType.Interface"> <summary> Used to request a list of types implementing a given interface. </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Get_RscVersion"> <summary> 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. </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.Invoke_Rsc"> <summary> Send a query to the RSC API. </summary> <description> 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. </description> <example> Send a query object. <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. </code> </example> <example> Send a GraphQL query string. <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. </code> </example> <example> Read the GraphQL query from a .gql file, and send it. <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. </code> </example> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Invoke_Rsc.Query"> <summary> The query object to send to the RSC API. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Invoke_Rsc.GqlQuery"> <summary> The text GraphQL query string to send to the RSC API. Variables can possibly be supplied in a header comment. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.Invoke_Rsc.Var"> <summary> The variables to supply to the GraphQL query. Only used when GqlQuery is set. </summary> </member> <member name="M:RubrikSecurityCloud.PowerShell.Cmdlets.Invoke_Rsc.ProcessRecord_Query"> <summary> Send a query object (obtained from a `New-RscQuery*` cmdlet). </summary> </member> <member name="M:RubrikSecurityCloud.PowerShell.Cmdlets.Invoke_Rsc.ProcessRecord_NativeGQL"> <summary> Send a raw GraphQL query to the RSC API. </summary> </member> <member name="M:RubrikSecurityCloud.PowerShell.Cmdlets.Invoke_Rsc.FetchAndCollatePages(RubrikSecurityCloud.RscQuery)"> <summary> Collate pages of results. </summary> </member> <member name="P:RubrikSecurityCloud.PowerShell.Cmdlets.New_GqlRootField.RootFieldKind"> <summary> The kind of root field this object is: a Query, a Mutation, or something unknown. </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutation"> <summary> Create a new RscMutation object. </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscQuery"> <summary> Create a new RscQuery object. </summary> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationAccount"> <summary> 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. </summary> <description> 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. </description> <example> Runs the CreateOrg operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: CreateOrg $query = New-RscMutationAccount -CreateOrg # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED fullName = $someString # REQUIRED description = $someString # REQUIRED authDomainConfig = $someTenantAuthDomainConfig # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TenantAuthDomainConfig]) for enum values. # REQUIRED shouldEnforceMfaForAll = $someBoolean # REQUIRED isEnvoyRequired = $someBoolean # REQUIRED allowedClusters = @( $someString ) # OPTIONAL existingUsers = @( @{ # REQUIRED id = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # OPTIONAL userInvites = @( @{ # REQUIRED email = $someString # REQUIRED note = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # REQUIRED permissions = @( @{ # REQUIRED operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values. # REQUIRED objectsForHierarchyTypes = @( @{ # REQUIRED objectIds = @( $someString ) # REQUIRED snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. } ) } ) # REQUIRED selfServicePermissions = @( @{ # OPTIONAL inventoryRoot = $someInventorySubHierarchyRootEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventorySubHierarchyRootEnum]) for enum values. # REQUIRED inventoryWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. # REQUIRED operations = @( $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values. ) # OPTIONAL hierarchyRoot = $someString } ) # OPTIONAL existingSsoGroups = @( @{ # REQUIRED id = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # OPTIONAL newSsoGroups = @( @{ # REQUIRED name = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # OPTIONAL isServiceAccountEnabled = $someBoolean # OPTIONAL isServiceAccountDisabled = $someBoolean # OPTIONAL crossAccountCapabilities = @( $someCrossAccountCapability # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CrossAccountCapability]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOrgReply </code> </example> <example> Runs the CreateOrgSwitchSession operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: CreateOrgSwitchSession $query = New-RscMutationAccount -CreateOrgSwitchSession # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOrgSwitchSessionReply </code> </example> <example> Runs the CreateRole operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: CreateRole $query = New-RscMutationAccount -CreateRole # REQUIRED $query.Var.name = $someString # REQUIRED $query.Var.description = $someString # REQUIRED $query.Var.permissions = @( @{ # REQUIRED operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values. # REQUIRED objectsForHierarchyTypes = @( @{ # REQUIRED objectIds = @( $someString ) # REQUIRED snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. } ) } ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the CreateUser operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: CreateUser $query = New-RscMutationAccount -CreateUser # REQUIRED $query.Var.email = $someString # REQUIRED $query.Var.roleIds = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the CreateUserWithPassword operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: CreateUserWithPassword $query = New-RscMutationAccount -CreateUserWithPassword # REQUIRED $query.Var.input = @{ # OPTIONAL email = $someString # OPTIONAL password = $someString # OPTIONAL roleIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteOrg operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: DeleteOrg $query = New-RscMutationAccount -DeleteOrg # REQUIRED $query.Var.input = @{ # REQUIRED organizationId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DeleteRole operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: DeleteRole $query = New-RscMutationAccount -DeleteRole # REQUIRED $query.Var.roleId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DeleteTotpConfig operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: DeleteTotpConfig $query = New-RscMutationAccount -DeleteTotpConfig # REQUIRED $query.Var.userId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DeleteTotpConfigs operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: DeleteTotpConfigs $query = New-RscMutationAccount -DeleteTotpConfigs # REQUIRED $query.Var.input = @{ # OPTIONAL userIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DeleteUsers operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: DeleteUsers $query = New-RscMutationAccount -DeleteUsers # REQUIRED $query.Var.ids = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the GenerateTotpSecret operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: GenerateTotpSecret $query = New-RscMutationAccount -GenerateTotpSecret # REQUIRED $query.Var.userId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GenerateTotpSecretReply </code> </example> <example> Runs the MutateRole operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: MutateRole $query = New-RscMutationAccount -MutateRole # OPTIONAL $query.Var.roleId = $someString # REQUIRED $query.Var.name = $someString # REQUIRED $query.Var.description = $someString # REQUIRED $query.Var.permissions = @( @{ # REQUIRED operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values. # REQUIRED objectsForHierarchyTypes = @( @{ # REQUIRED objectIds = @( $someString ) # REQUIRED snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. } ) } ) # REQUIRED $query.Var.protectableClusters = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateOrg operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: UpdateOrg $query = New-RscMutationAccount -UpdateOrg # REQUIRED $query.Var.input = @{ # REQUIRED organizationId = $someString # REQUIRED name = $someString # REQUIRED fullName = $someString # REQUIRED description = $someString # REQUIRED authDomainConfig = $someTenantAuthDomainConfig # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TenantAuthDomainConfig]) for enum values. # REQUIRED shouldEnforceMfaForAll = $someBoolean # REQUIRED isEnvoyRequired = $someBoolean # REQUIRED allowedClusters = @( $someString ) # OPTIONAL existingUsers = @( @{ # REQUIRED id = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # OPTIONAL userInvites = @( @{ # REQUIRED email = $someString # REQUIRED note = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # REQUIRED permissions = @( @{ # REQUIRED operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values. # REQUIRED objectsForHierarchyTypes = @( @{ # REQUIRED objectIds = @( $someString ) # REQUIRED snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. } ) } ) # REQUIRED selfServicePermissions = @( @{ # OPTIONAL inventoryRoot = $someInventorySubHierarchyRootEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventorySubHierarchyRootEnum]) for enum values. # REQUIRED inventoryWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. # REQUIRED operations = @( $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values. ) # OPTIONAL hierarchyRoot = $someString } ) # OPTIONAL existingSsoGroups = @( @{ # REQUIRED id = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # OPTIONAL newSsoGroups = @( @{ # REQUIRED name = $someString # REQUIRED isOrgAdmin = $someBoolean } ) # OPTIONAL isServiceAccountEnabled = $someBoolean # OPTIONAL isServiceAccountDisabled = $someBoolean # OPTIONAL crossAccountCapabilities = @( $someCrossAccountCapability # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CrossAccountCapability]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateOrgReply </code> </example> <example> Runs the UpdateRole operation of the 'Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Account # API Operation: UpdateRole $query = New-RscMutationAccount -UpdateRole # REQUIRED $query.Var.roleId = $someString # REQUIRED $query.Var.name = $someString # REQUIRED $query.Var.description = $someString # REQUIRED $query.Var.permissions = @( @{ # REQUIRED operation = $someOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Operation]) for enum values. # REQUIRED objectsForHierarchyTypes = @( @{ # REQUIRED objectIds = @( $someString ) # REQUIRED snappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. } ) } ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationActiveDirectory"> <summary> Create a new RscQuery object for any of the 4 operations in the 'Active Directory' API domain: CreateLiveMount, CreateUnmount, ModifyLiveMount, or RestoreObjects. </summary> <description> 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. </description> <example> Runs the CreateLiveMount operation of the 'Active Directory' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ActiveDirectory # API Operation: CreateLiveMount $query = New-RscMutationActiveDirectory -CreateLiveMount # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL validUsers = @( $someString ) # OPTIONAL validIps = @( $someString ) # OPTIONAL mountExpiryInMinutes = $someInt # OPTIONAL domainControllerId = $someString # OPTIONAL password = $someString # OPTIONAL shouldBeWritable = $someBoolean # OPTIONAL domainName = $someString # OPTIONAL subnet = $someString # OPTIONAL shouldMountVhdx = $someBoolean } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateUnmount operation of the 'Active Directory' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ActiveDirectory # API Operation: CreateUnmount $query = New-RscMutationActiveDirectory -CreateUnmount # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ModifyLiveMount operation of the 'Active Directory' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ActiveDirectory # API Operation: ModifyLiveMount $query = New-RscMutationActiveDirectory -ModifyLiveMount # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL validIps = @( $someString ) # OPTIONAL password = $someString # OPTIONAL subnet = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the RestoreObjects operation of the 'Active Directory' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ActiveDirectory # API Operation: RestoreObjects $query = New-RscMutationActiveDirectory -RestoreObjects # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL shouldMergeLinkedAttrs = $someBoolean # OPTIONAL restoreToDifferentContainer = $someString # OPTIONAL shouldContinueOnError = $someBoolean # OPTIONAL clearUpAttrsIfNullInBackup = $someBoolean # OPTIONAL 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 </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationActivitySeries"> <summary> Create a new RscQuery object for any of the 3 operations in the 'Activity series' API domain: Cancel, DownloadUserCsv, or DownloadUserFileCsv. </summary> <description> 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. </description> <example> Runs the Cancel operation of the 'Activity series' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ActivitySeries # API Operation: Cancel $query = New-RscMutationActivitySeries -Cancel # REQUIRED $query.Var.input = @{ # REQUIRED activitySeriesId = $someString # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DownloadUserCsv operation of the 'Activity series' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ActivitySeries # API Operation: DownloadUserCsv $query = New-RscMutationActivitySeries -DownloadUserCsv # REQUIRED $query.Var.input = @{ # REQUIRED filters = @{ # OPTIONAL openAccessTypes = @( $someOpenAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OpenAccessType]) for enum values. ) # OPTIONAL stalenessTypes = @( $someStalenessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StalenessType]) for enum values. ) # OPTIONAL analyzerGroupIds = @( $someString ) # OPTIONAL clusterIds = @( $someString ) # OPTIONAL pathPrefix = $someString # OPTIONAL snappableTypes = @( $someString ) # OPTIONAL searchText = $someString # OPTIONAL whitelistEnabled = $someBoolean # OPTIONAL fileCountTypes = @( $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values. ) # OPTIONAL accessTypes = @( $someAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AccessType]) for enum values. ) # OPTIONAL activityTypes = @( $someActivityAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityAccessType]) for enum values. ) # OPTIONAL objectIds = @( $someString ) # OPTIONAL inodeTypes = @( $someInodeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InodeType]) for enum values. ) # REQUIRED objectTypes = @( $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values. ) } # REQUIRED day = $someString # REQUIRED timezone = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadCsvReply </code> </example> <example> Runs the DownloadUserFileCsv operation of the 'Activity series' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ActivitySeries # API Operation: DownloadUserFileCsv $query = New-RscMutationActivitySeries -DownloadUserFileCsv # REQUIRED $query.Var.input = @{ # REQUIRED userId = $someString # REQUIRED snapshot = @{ # OPTIONAL snappableFid = $someString # OPTIONAL snapshotFid = $someString } # REQUIRED nativePath = $someString # REQUIRED timezone = $someString # REQUIRED startDay = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadCsvReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationArchival"> <summary> 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. </summary> <description> 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. </description> <example> Runs the CreateGlacierReaderTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: CreateGlacierReaderTarget $query = New-RscMutationArchival -CreateGlacierReaderTarget # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED cloudAccountId = $someString # REQUIRED vaultName = $someString # REQUIRED region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values. # OPTIONAL encryptionPassword = $someString # REQUIRED clusterUuid = $someString # OPTIONAL retrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values. # REQUIRED readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the CreateManualTargetMapping operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: CreateManualTargetMapping $query = New-RscMutationArchival -CreateManualTargetMapping # REQUIRED $query.Var.input = @{ # OPTIONAL name = $someString # OPTIONAL type = $someTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TargetType]) for enum values. # OPTIONAL archivalLocationClusterMappings = @( @{ # OPTIONAL locationId = $someString # OPTIONAL clusterUuid = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> <example> Runs the CreateS3CompatibleReaderTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: CreateS3CompatibleReaderTarget $query = New-RscMutationArchival -CreateS3CompatibleReaderTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED name = $someString # REQUIRED accessKey = $someString # REQUIRED secretKey = $someString # REQUIRED endpoint = $someString # REQUIRED bucketPrefix = $someString # REQUIRED numberOfBuckets = $someInt # REQUIRED encryptionKeyInDer = $someString # REQUIRED isConsolidationEnabled = $someBoolean # REQUIRED useSystemProxy = $someBoolean # REQUIRED readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values. # OPTIONAL subType = $someS3CompatibleSubType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.S3CompatibleSubType]) for enum values. # OPTIONAL encryptionPassword = $someString # OPTIONAL immutabilitySettings = @{ # OPTIONAL bucketLockDurationDays = $someInt } # OPTIONAL ibmDetails = @{ # OPTIONAL provisioningCode = $someString # OPTIONAL deploymentType = $someIbmDeploymentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IbmDeploymentType]) for enum values. } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the CreateS3CompatibleTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: CreateS3CompatibleTarget $query = New-RscMutationArchival -CreateS3CompatibleTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED name = $someString # REQUIRED accessKey = $someString # REQUIRED secretKey = $someString # REQUIRED endpoint = $someString # REQUIRED bucketPrefix = $someString # REQUIRED numberOfBuckets = $someInt # REQUIRED encryptionKeyInDer = $someString # REQUIRED isConsolidationEnabled = $someBoolean # REQUIRED useSystemProxy = $someBoolean # OPTIONAL subType = $someS3CompatibleSubType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.S3CompatibleSubType]) for enum values. # OPTIONAL encryptionPassword = $someString # OPTIONAL immutabilitySettings = @{ # OPTIONAL bucketLockDurationDays = $someInt } # OPTIONAL ibmDetails = @{ # OPTIONAL provisioningCode = $someString # OPTIONAL deploymentType = $someIbmDeploymentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IbmDeploymentType]) for enum values. } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the DeleteTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: DeleteTarget $query = New-RscMutationArchival -DeleteTarget # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteTargetMapping operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: DeleteTargetMapping $query = New-RscMutationArchival -DeleteTargetMapping # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DisableTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: DisableTarget $query = New-RscMutationArchival -DisableTarget # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DisableTargetReply </code> </example> <example> Runs the EnableTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: EnableTarget $query = New-RscMutationArchival -EnableTarget # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: EnableTargetReply </code> </example> <example> Runs the PauseTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: PauseTarget $query = New-RscMutationArchival -PauseTarget # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PauseTargetReply </code> </example> <example> Runs the PromoteReaderTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: PromoteReaderTarget $query = New-RscMutationArchival -PromoteReaderTarget # REQUIRED $query.Var.input = @{ # OPTIONAL locationId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the RefreshReaderTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: RefreshReaderTarget $query = New-RscMutationArchival -RefreshReaderTarget # REQUIRED $query.Var.input = @{ # OPTIONAL localDataSourceIds = @( $someString ) # OPTIONAL archivalDataSourceIds = @( $someString ) # OPTIONAL locationId = $someString # OPTIONAL externalLocationId = $someString # OPTIONAL clusterId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ResumeTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: ResumeTarget $query = New-RscMutationArchival -ResumeTarget # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResumeTargetReply </code> </example> <example> Runs the UpdateGlacierTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: UpdateGlacierTarget $query = New-RscMutationArchival -UpdateGlacierTarget # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL retrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values. # OPTIONAL cloudAccountId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the UpdateManualTargetMapping operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: UpdateManualTargetMapping $query = New-RscMutationArchival -UpdateManualTargetMapping # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL archivalLocationClusterMappings = @( @{ # OPTIONAL locationId = $someString # OPTIONAL clusterUuid = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> <example> Runs the UpdateS3CompatibleTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: UpdateS3CompatibleTarget $query = New-RscMutationArchival -UpdateS3CompatibleTarget # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL accessKey = $someString # OPTIONAL secretKey = $someString # OPTIONAL endpoint = $someString # OPTIONAL numberOfBuckets = $someInt # OPTIONAL isConsolidationEnabled = $someBoolean # OPTIONAL useSystemProxy = $someBoolean # OPTIONAL immutabilitySettings = @{ # OPTIONAL bucketLockDurationDays = $someInt } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the UpgradeCdmManagedTarget operation of the 'Archival' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Archival # API Operation: UpgradeCdmManagedTarget $query = New-RscMutationArchival -UpgradeCdmManagedTarget # REQUIRED $query.Var.input = @{ # REQUIRED fids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationAws"> <summary> Create a new RscQuery object for any of the 35 operations in the 'AWS' API domain: AddAuthenticationServerBasedCloudAccount, AddIamUserBasedCloudAccount, BulkDeleteCloudAccountWithoutCft, CreateAccount, CreateAutomaticTargetMapping, CreateCloudNativeStorageSetting, CreateCluster, CreateComputeSetting, CreateExocomputeConfigs, CreateReaderTarget, CreateTarget, DeleteComputeSetting, DeleteExocomputeConfigs, DisconnectExocomputeCluster, ExocomputeClusterConnect, FinalizeCloudAccountDeletion, FinalizeCloudAccountProtection, PatchAuthenticationServerBasedCloudAccount, PatchIamUserBasedCloudAccount, PrepareCloudAccountDeletion, PrepareFeatureUpdateForCloudAccount, RegisterFeatureArtifacts, StartExocomputeDisableJob, UpdateAccount, UpdateAutomaticTargetMapping, UpdateCloudAccount, UpdateCloudAccountFeature, UpdateCloudNativeStorageSetting, UpdateComputeSetting, UpdateExocomputeConfigs, UpdateTarget, UpgradeCloudAccountFeaturesWithoutCft, UpgradeIamUserBasedCloudAccountPermissions, ValidateAndCreateCloudAccount, or ValidateAndInitiateOutpostAccount. </summary> <description> New-RscMutationAws creates a new mutation object for operations in the 'AWS' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 35 operations in the 'AWS' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddAuthenticationServerBasedCloudAccount, AddIamUserBasedCloudAccount, BulkDeleteCloudAccountWithoutCft, CreateAccount, CreateAutomaticTargetMapping, CreateCloudNativeStorageSetting, CreateCluster, CreateComputeSetting, CreateExocomputeConfigs, CreateReaderTarget, CreateTarget, DeleteComputeSetting, DeleteExocomputeConfigs, DisconnectExocomputeCluster, ExocomputeClusterConnect, FinalizeCloudAccountDeletion, FinalizeCloudAccountProtection, PatchAuthenticationServerBasedCloudAccount, PatchIamUserBasedCloudAccount, PrepareCloudAccountDeletion, PrepareFeatureUpdateForCloudAccount, RegisterFeatureArtifacts, StartExocomputeDisableJob, UpdateAccount, UpdateAutomaticTargetMapping, UpdateCloudAccount, UpdateCloudAccountFeature, UpdateCloudNativeStorageSetting, UpdateComputeSetting, UpdateExocomputeConfigs, UpdateTarget, UpgradeCloudAccountFeaturesWithoutCft, UpgradeIamUserBasedCloudAccountPermissions, ValidateAndCreateCloudAccount, or ValidateAndInitiateOutpostAccount. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAws -AddAuthenticationServerBasedCloudAccount).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationAws -AddAuthenticationServerBasedCloudAccount).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddAuthenticationServerBasedCloudAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: AddAuthenticationServerBasedCloudAccount $query = New-RscMutationAws -AddAuthenticationServerBasedCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. # REQUIRED awsAccountName = $someString # OPTIONAL awsRegions = @( $someAwsAuthServerBasedCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsAuthServerBasedCloudAccountRegion]) for enum values. ) # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL nativeId = $someString # OPTIONAL agencyName = $someString # OPTIONAL roleName = $someString # OPTIONAL authServerHostName = $someString # OPTIONAL authServerUserClientCertId = @{ # REQUIRED id = $someInt64 } # OPTIONAL authServerCaCertId = @{ # REQUIRED id = $someInt64 } # OPTIONAL awsCaCertId = @{ # REQUIRED id = $someInt64 } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddAwsAuthenticationServerBasedCloudAccountReply </code> </example> <example> Runs the AddIamUserBasedCloudAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: AddIamUserBasedCloudAccount $query = New-RscMutationAws -AddIamUserBasedCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL accessKey = $someString # OPTIONAL secretKey = $someString # REQUIRED nativeId = $someString # REQUIRED cloudAccountName = $someString # OPTIONAL cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. # OPTIONAL awsRegions = @( $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values. ) # OPTIONAL roleArn = $someString # OPTIONAL externalArtifactMap = @( @{ # OPTIONAL externalArtifactKey = $someAwsCloudExternalArtifact # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudExternalArtifact]) for enum values. # OPTIONAL externalArtifactValue = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddAwsIamUserBasedCloudAccountReply </code> </example> <example> Runs the BulkDeleteCloudAccountWithoutCft operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: BulkDeleteCloudAccountWithoutCft $query = New-RscMutationAws -BulkDeleteCloudAccountWithoutCft # REQUIRED $query.Var.input = @{ # REQUIRED awsNativeId = $someString # OPTIONAL features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkDeleteAwsCloudAccountWithoutCftReply </code> </example> <example> Runs the CreateAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateAccount $query = New-RscMutationAws -CreateAccount # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # OPTIONAL description = $someString # REQUIRED accessKey = $someString # REQUIRED secretKey = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CloudAccount </code> </example> <example> Runs the CreateAutomaticTargetMapping operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateAutomaticTargetMapping $query = New-RscMutationAws -CreateAutomaticTargetMapping # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED cloudAccountId = $someString # REQUIRED bucketPrefix = $someString # REQUIRED storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values. # REQUIRED region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values. # OPTIONAL kmsMasterKeyId = $someString # OPTIONAL rsaKey = $someString # REQUIRED isConsolidationEnabled = $someBoolean # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL clusterUuidList = @( $someString ) # OPTIONAL awsComputeSettingsId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> <example> Runs the CreateCloudNativeStorageSetting operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateCloudNativeStorageSetting $query = New-RscMutationAws -CreateCloudNativeStorageSetting # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED cloudAccountId = $someString # REQUIRED bucketPrefix = $someString # REQUIRED storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values. # OPTIONAL region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values. # OPTIONAL kmsMasterKeyId = $someString # REQUIRED cloudNativeLocTemplateType = $someCloudNativeLocTemplateType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLocTemplateType]) for enum values. # OPTIONAL bucketTags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateCloudNativeAwsStorageSettingReply </code> </example> <example> Runs the CreateCluster operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateCluster $query = New-RscMutationAws -CreateCluster # REQUIRED $query.Var.input = @{ # OPTIONAL cloudAccountId = $someString # OPTIONAL isEsType = $someBoolean # OPTIONAL keepClusterOnFailure = $someBoolean # OPTIONAL region = $someString # OPTIONAL disableApiTermination = $someBoolean # OPTIONAL clusterConfig = @{ # OPTIONAL userEmail = $someString # OPTIONAL adminPassword = $someString # OPTIONAL clusterName = $someString # OPTIONAL numNodes = $someInt # OPTIONAL dnsSearchDomains = @( $someString ) # OPTIONAL dnsNameServers = @( $someString ) # OPTIONAL ntpServers = @( $someString ) # OPTIONAL azureEsConfig = @{ # OPTIONAL storageAccount = $someString # OPTIONAL resourceGroup = $someString # OPTIONAL storageSecret = $someString # OPTIONAL containerName = $someString # OPTIONAL shouldCreateContainer = $someBoolean # OPTIONAL enableImmutability = $someBoolean # OPTIONAL managedIdentity = @{ # OPTIONAL name = $someString # OPTIONAL clientId = $someString # OPTIONAL resourceGroup = $someString } } # OPTIONAL awsEsConfig = @{ # OPTIONAL bucketName = $someString # OPTIONAL shouldCreateBucket = $someBoolean # OPTIONAL enableObjectLock = $someBoolean # OPTIONAL enableImmutability = $someBoolean } } # OPTIONAL vmConfig = @{ # OPTIONAL cdmVersion = $someString # OPTIONAL nodeSizeGb = $someInt # OPTIONAL subnet = $someString # OPTIONAL tags = $someString # OPTIONAL imageId = $someString # OPTIONAL instanceProfileName = $someString # OPTIONAL cdmProduct = $someString # OPTIONAL vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values. # OPTIONAL securityGroups = @( $someString ) # OPTIONAL instanceType = $someAwsInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsInstanceType]) for enum values. # OPTIONAL networkConfig = @( @{ # OPTIONAL availabilityZone = $someString # OPTIONAL subnet = $someString } ) } # OPTIONAL validations = @( $someClusterCreateValidations # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCreateValidations]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CcProvisionJobReply </code> </example> <example> Runs the CreateComputeSetting operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateComputeSetting $query = New-RscMutationAws -CreateComputeSetting # REQUIRED $query.Var.input = @{ # OPTIONAL name = $someString # OPTIONAL subnetId = $someString # OPTIONAL vpcId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL cloudAccountId = $someString # OPTIONAL region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values. # OPTIONAL isSecurityGroupPolarisManaged = $someBoolean # OPTIONAL clusterInterfaceCidrs = @( @{ # OPTIONAL clusterName = $someString # OPTIONAL clusterId = $someString # OPTIONAL interfaceCidr = @( @{ # OPTIONAL interfaceType = $someInterfaceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InterfaceType]) for enum values. # OPTIONAL cidr = $someString # OPTIONAL selected = $someBoolean } ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AwsComputeSettings </code> </example> <example> Runs the CreateExocomputeConfigs operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateExocomputeConfigs $query = New-RscMutationAws -CreateExocomputeConfigs # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED configs = @( @{ # REQUIRED region = $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values. # OPTIONAL clusterSecurityGroupId = $someString # OPTIONAL vpcId = $someString # OPTIONAL nodeSecurityGroupId = $someString # OPTIONAL subnets = @( @{ # REQUIRED subnetId = $someString # REQUIRED availabilityZone = $someString } ) # OPTIONAL isRscManaged = $someBoolean # OPTIONAL clusterName = $someString } ) # OPTIONAL triggerHealthCheck = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateAwsExocomputeConfigsReply </code> </example> <example> Runs the CreateReaderTarget operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateReaderTarget $query = New-RscMutationAws -CreateReaderTarget # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED cloudAccountId = $someString # REQUIRED bucketName = $someString # REQUIRED storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values. # REQUIRED region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values. # OPTIONAL kmsMasterKeyId = $someString # OPTIONAL rsaKey = $someString # OPTIONAL encryptionPassword = $someString # REQUIRED clusterUuid = $someString # REQUIRED isConsolidationEnabled = $someBoolean # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL awsComputeSettingsId = $someString # OPTIONAL cloudComputeSettings = @{ # OPTIONAL subnetId = $someString # OPTIONAL vpcId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } } # OPTIONAL awsRetrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values. # REQUIRED readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values. # OPTIONAL s3Endpoint = $someString # OPTIONAL kmsEndpoint = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL awsIamPairId = $someString # REQUIRED bypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the CreateTarget operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: CreateTarget $query = New-RscMutationAws -CreateTarget # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED cloudAccountId = $someString # REQUIRED bucketName = $someString # REQUIRED storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values. # REQUIRED region = $someAwsRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRegion]) for enum values. # OPTIONAL kmsMasterKeyId = $someString # OPTIONAL rsaKey = $someString # OPTIONAL encryptionPassword = $someString # REQUIRED clusterUuid = $someString # REQUIRED isConsolidationEnabled = $someBoolean # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL awsComputeSettingsId = $someString # OPTIONAL cloudComputeSettings = @{ # OPTIONAL subnetId = $someString # OPTIONAL vpcId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } } # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL awsRetrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values. # OPTIONAL immutabilitySettings = @{ # OPTIONAL lockDurationDays = $someInt } # OPTIONAL s3Endpoint = $someString # OPTIONAL kmsEndpoint = $someString # OPTIONAL awsIamPairId = $someString # REQUIRED bypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the DeleteComputeSetting operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: DeleteComputeSetting $query = New-RscMutationAws -DeleteComputeSetting # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteExocomputeConfigs operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: DeleteExocomputeConfigs $query = New-RscMutationAws -DeleteExocomputeConfigs # REQUIRED $query.Var.input = @{ # REQUIRED configIdsToBeDeleted = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DeleteAwsExocomputeConfigsReply </code> </example> <example> Runs the DisconnectExocomputeCluster operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: DisconnectExocomputeCluster $query = New-RscMutationAws -DisconnectExocomputeCluster # REQUIRED $query.Var.input = @{ # REQUIRED clusterId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ExocomputeClusterConnect operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: ExocomputeClusterConnect $query = New-RscMutationAws -ExocomputeClusterConnect # REQUIRED $query.Var.input = @{ # OPTIONAL clusterName = $someString # REQUIRED exocomputeConfigId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AwsExocomputeClusterConnectReply </code> </example> <example> Runs the FinalizeCloudAccountDeletion operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: FinalizeCloudAccountDeletion $query = New-RscMutationAws -FinalizeCloudAccountDeletion # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL awsIamPairId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: FinalizeAwsCloudAccountDeletionReply </code> </example> <example> Runs the FinalizeCloudAccountProtection operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: FinalizeCloudAccountProtection $query = New-RscMutationAws -FinalizeCloudAccountProtection # REQUIRED $query.Var.input = @{ # REQUIRED action = $someCloudAccountAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountAction]) for enum values. # OPTIONAL features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL awsAdminAccount = @{ # OPTIONAL id = $someString # OPTIONAL nativeId = $someString # OPTIONAL accountName = $someString # OPTIONAL seamlessFlowEnabled = $someBoolean # OPTIONAL orgName = $someString # OPTIONAL outpostAwsNativeId = $someString # OPTIONAL cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. } # REQUIRED awsChildAccounts = @( @{ # OPTIONAL id = $someString # OPTIONAL nativeId = $someString # OPTIONAL accountName = $someString # OPTIONAL seamlessFlowEnabled = $someBoolean # OPTIONAL orgName = $someString # OPTIONAL outpostAwsNativeId = $someString # OPTIONAL cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. } ) # OPTIONAL awsRegions = @( $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values. ) # OPTIONAL stackName = $someString # OPTIONAL stackSetName = $someString # OPTIONAL externalId = $someString # OPTIONAL featureVersion = @( @{ # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL version = $someInt # OPTIONAL permissionsGroupVersions = @( @{ # REQUIRED permissionsGroup = $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. # OPTIONAL version = $someInt } ) } ) # OPTIONAL featuresWithPermissionsGroups = @( @{ # OPTIONAL featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL permissionsGroups = @( $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. ) } ) # OPTIONAL awsIamPairId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: FinalizeAwsCloudAccountProtectionReply </code> </example> <example> Runs the PatchAuthenticationServerBasedCloudAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: PatchAuthenticationServerBasedCloudAccount $query = New-RscMutationAws -PatchAuthenticationServerBasedCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED awsCloudAccountId = $someString # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL awsRegions = @{ # REQUIRED regions = @( $someAwsAuthServerBasedCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsAuthServerBasedCloudAccountRegion]) for enum values. ) } # OPTIONAL roleName = @{ # REQUIRED name = $someString } # OPTIONAL authServerUserClientCertId = @{ # REQUIRED id = $someInt64 } # OPTIONAL authServerCaCertId = @{ # REQUIRED id = $someInt64 } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the PatchIamUserBasedCloudAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: PatchIamUserBasedCloudAccount $query = New-RscMutationAws -PatchIamUserBasedCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED awsCloudAccountId = $someString # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL awsRegions = @{ # REQUIRED regions = @( $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values. ) } # OPTIONAL awsUserKeys = @{ # REQUIRED accessKey = $someString # REQUIRED secretKey = $someString } # OPTIONAL awsRoleArn = @{ # REQUIRED roleArn = $someString } # OPTIONAL externalArtifactMap = @( @{ # OPTIONAL externalArtifactKey = $someAwsCloudExternalArtifact # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudExternalArtifact]) for enum values. # OPTIONAL externalArtifactValue = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the PrepareCloudAccountDeletion operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: PrepareCloudAccountDeletion $query = New-RscMutationAws -PrepareCloudAccountDeletion # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL awsRoleCustomization = @{ # OPTIONAL crossAccountRoleName = $someString # OPTIONAL crossAccountRolePath = $someString # OPTIONAL masterRoleName = $someString # OPTIONAL masterRolePath = $someString # OPTIONAL workerRoleName = $someString # OPTIONAL workerRolePath = $someString # OPTIONAL instanceProfileName = $someString # OPTIONAL instanceProfilePath = $someString # OPTIONAL ec2RecoveryRolePath = $someString } # OPTIONAL awsIamPairId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PrepareAwsCloudAccountDeletionReply </code> </example> <example> Runs the PrepareFeatureUpdateForCloudAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: PrepareFeatureUpdateForCloudAccount $query = New-RscMutationAws -PrepareFeatureUpdateForCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # OPTIONAL features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL featuresWithPermissionsGroups = @( @{ # OPTIONAL featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL permissionsGroups = @( $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. ) } ) # OPTIONAL awsRoleCustomization = @{ # OPTIONAL crossAccountRoleName = $someString # OPTIONAL crossAccountRolePath = $someString # OPTIONAL masterRoleName = $someString # OPTIONAL masterRolePath = $someString # OPTIONAL workerRoleName = $someString # OPTIONAL workerRolePath = $someString # OPTIONAL instanceProfileName = $someString # OPTIONAL instanceProfilePath = $someString # OPTIONAL ec2RecoveryRolePath = $someString } # OPTIONAL awsIamPairId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PrepareFeatureUpdateForAwsCloudAccountReply </code> </example> <example> Runs the RegisterFeatureArtifacts operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: RegisterFeatureArtifacts $query = New-RscMutationAws -RegisterFeatureArtifacts # REQUIRED $query.Var.input = @{ # REQUIRED awsArtifacts = @( @{ # REQUIRED awsNativeId = $someString # REQUIRED externalArtifacts = @( @{ # REQUIRED externalArtifactValue = $someString # OPTIONAL externalArtifactKey = $someAwsCloudExternalArtifact # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudExternalArtifact]) for enum values. } ) # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) } ) # OPTIONAL cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RegisterAwsFeatureArtifactsReply </code> </example> <example> Runs the StartExocomputeDisableJob operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: StartExocomputeDisableJob $query = New-RscMutationAws -StartExocomputeDisableJob # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the UpdateAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateAccount $query = New-RscMutationAws -UpdateAccount # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED name = $someString # OPTIONAL description = $someString # REQUIRED accessKey = $someString # REQUIRED secretKey = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CloudAccount </code> </example> <example> Runs the UpdateAutomaticTargetMapping operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateAutomaticTargetMapping $query = New-RscMutationAws -UpdateAutomaticTargetMapping # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL cloudAccountId = $someString # OPTIONAL storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values. # OPTIONAL isConsolidationEnabled = $someBoolean # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL clusterUuidList = @( $someString ) # OPTIONAL awsComputeSettingsId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> <example> Runs the UpdateCloudAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateCloudAccount $query = New-RscMutationAws -UpdateCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # OPTIONAL awsAccountName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateCloudAccountFeature operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateCloudAccountFeature $query = New-RscMutationAws -UpdateCloudAccountFeature # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED action = $someCloudAccountAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountAction]) for enum values. # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL awsRegions = @( $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values. ) # OPTIONAL roleArn = $someString # OPTIONAL stackArn = $someString # OPTIONAL awsAccountName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateAwsCloudAccountFeatureReply </code> </example> <example> Runs the UpdateCloudNativeStorageSetting operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateCloudNativeStorageSetting $query = New-RscMutationAws -UpdateCloudNativeStorageSetting # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values. # OPTIONAL kmsMasterKeyId = $someString # OPTIONAL bucketTags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } # OPTIONAL deleteAllBucketTags = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateCloudNativeAwsStorageSettingReply </code> </example> <example> Runs the UpdateComputeSetting operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateComputeSetting $query = New-RscMutationAws -UpdateComputeSetting # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL subnetId = $someString # OPTIONAL vpcId = $someString # OPTIONAL securityGroupId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AwsComputeSettings </code> </example> <example> Runs the UpdateExocomputeConfigs operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateExocomputeConfigs $query = New-RscMutationAws -UpdateExocomputeConfigs # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED configs = @( @{ # REQUIRED region = $someAwsCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudAccountRegion]) for enum values. # OPTIONAL clusterSecurityGroupId = $someString # OPTIONAL vpcId = $someString # OPTIONAL nodeSecurityGroupId = $someString # OPTIONAL subnets = @( @{ # REQUIRED subnetId = $someString # REQUIRED availabilityZone = $someString } ) # OPTIONAL isRscManaged = $someBoolean # OPTIONAL clusterName = $someString } ) # OPTIONAL triggerHealthCheck = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateAwsExocomputeConfigsReply </code> </example> <example> Runs the UpdateTarget operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpdateTarget $query = New-RscMutationAws -UpdateTarget # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL cloudAccountId = $someString # OPTIONAL storageClass = $someAwsStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsStorageClass]) for enum values. # OPTIONAL isConsolidationEnabled = $someBoolean # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL awsComputeSettingsId = $someString # OPTIONAL cloudComputeSettings = @{ # OPTIONAL subnetId = $someString # OPTIONAL vpcId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } } # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL awsRetrievalTier = $someAwsRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsRetrievalTier]) for enum values. # OPTIONAL immutabilitySettings = @{ # OPTIONAL lockDurationDays = $someInt } # OPTIONAL s3Endpoint = $someString # OPTIONAL kmsEndpoint = $someString # OPTIONAL bypassProxy = $someBoolean # OPTIONAL awsIamPairId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the UpgradeCloudAccountFeaturesWithoutCft operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpgradeCloudAccountFeaturesWithoutCft $query = New-RscMutationAws -UpgradeCloudAccountFeaturesWithoutCft # REQUIRED $query.Var.input = @{ # REQUIRED awsCloudAccountId = $someString # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the UpgradeIamUserBasedCloudAccountPermissions operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: UpgradeIamUserBasedCloudAccountPermissions $query = New-RscMutationAws -UpgradeIamUserBasedCloudAccountPermissions # REQUIRED $query.Var.input = @{ # REQUIRED awsCloudAccountId = $someString # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the ValidateAndCreateCloudAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: ValidateAndCreateCloudAccount $query = New-RscMutationAws -ValidateAndCreateCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED action = $someCloudAccountAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountAction]) for enum values. # OPTIONAL features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL awsAdminAccount = @{ # OPTIONAL id = $someString # OPTIONAL nativeId = $someString # OPTIONAL accountName = $someString # OPTIONAL seamlessFlowEnabled = $someBoolean # OPTIONAL orgName = $someString # OPTIONAL outpostAwsNativeId = $someString # OPTIONAL cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. } # REQUIRED awsChildAccounts = @( @{ # OPTIONAL id = $someString # OPTIONAL nativeId = $someString # OPTIONAL accountName = $someString # OPTIONAL seamlessFlowEnabled = $someBoolean # OPTIONAL orgName = $someString # OPTIONAL outpostAwsNativeId = $someString # OPTIONAL cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. } ) # OPTIONAL awsRoleCustomization = @{ # OPTIONAL crossAccountRoleName = $someString # OPTIONAL crossAccountRolePath = $someString # OPTIONAL masterRoleName = $someString # OPTIONAL masterRolePath = $someString # OPTIONAL workerRoleName = $someString # OPTIONAL workerRolePath = $someString # OPTIONAL instanceProfileName = $someString # OPTIONAL instanceProfilePath = $someString # OPTIONAL ec2RecoveryRolePath = $someString } # OPTIONAL featuresWithPermissionsGroups = @( @{ # OPTIONAL featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL permissionsGroups = @( $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. ) } ) # OPTIONAL awsIamPair = @{ # OPTIONAL awsIamPairId = $someString # OPTIONAL awsIamRoleName = $someString } # OPTIONAL outpostAwsNativeId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ValidateAndCreateAwsCloudAccountReply </code> </example> <example> Runs the ValidateAndInitiateOutpostAccount operation of the 'AWS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Aws # API Operation: ValidateAndInitiateOutpostAccount $query = New-RscMutationAws -ValidateAndInitiateOutpostAccount # REQUIRED $query.Var.input = @{ # REQUIRED outpostAwsNativeId = $someString # OPTIONAL cloudType = $someAwsCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ValidateAndInitiateAwsOutpostAccountReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationAwsNative"> <summary> 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. </summary> <description> 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. </description> <example> Runs the ExcludeEbsVolumesFromSnapshot operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: ExcludeEbsVolumesFromSnapshot $query = New-RscMutationAwsNative -ExcludeEbsVolumesFromSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED awsNativeEc2InstanceId = $someString # REQUIRED volumeIdExclusions = @( @{ # REQUIRED volumeId = $someString # REQUIRED isExcluded = $someBoolean } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the StartAccountDisableJob operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: StartAccountDisableJob $query = New-RscMutationAwsNative -StartAccountDisableJob # REQUIRED $query.Var.input = @{ # REQUIRED awsAccountRubrikId = $someString # REQUIRED shouldDeleteNativeSnapshots = $someBoolean # REQUIRED awsNativeProtectionFeature = $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartCreateEbsVolumeSnapshotsJob operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: StartCreateEbsVolumeSnapshotsJob $query = New-RscMutationAwsNative -StartCreateEbsVolumeSnapshotsJob # REQUIRED $query.Var.input = @{ # REQUIRED ebsVolumeIds = @( $someString ) # OPTIONAL retentionSlaId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartEc2InstanceSnapshotsJob operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: StartEc2InstanceSnapshotsJob $query = New-RscMutationAwsNative -StartEc2InstanceSnapshotsJob # REQUIRED $query.Var.input = @{ # REQUIRED ec2InstanceIds = @( $someString ) # OPTIONAL retentionSlaId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartExportEbsVolumeSnapshotJob operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: StartExportEbsVolumeSnapshotJob $query = New-RscMutationAwsNative -StartExportEbsVolumeSnapshotJob # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED destinationAwsAccountRubrikId = $someString # REQUIRED destinationRegionNativeId = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values. # REQUIRED volumeName = $someString # REQUIRED volumeSize = $someInt # REQUIRED volumeType = $someAwsNativeEbsVolumeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEbsVolumeType]) for enum values. # REQUIRED availabilityZone = $someString # REQUIRED iops = $someInt # REQUIRED shouldCopyTags = $someBoolean # REQUIRED shouldReplaceAttached = $someBoolean # OPTIONAL kmsKeyId = $someString # OPTIONAL snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartRdsInstanceSnapshotsJob operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: StartRdsInstanceSnapshotsJob $query = New-RscMutationAwsNative -StartRdsInstanceSnapshotsJob # REQUIRED $query.Var.input = @{ # REQUIRED rdsInstanceIds = @( $someString ) # OPTIONAL retentionSlaId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartRefreshAccountsJob operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: StartRefreshAccountsJob $query = New-RscMutationAwsNative -StartRefreshAccountsJob # REQUIRED $query.Var.input = @{ # REQUIRED awsAccountRubrikIds = @( $someString ) # REQUIRED awsNativeProtectionFeatures = @( $someAwsNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeProtectionFeature]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartRestoreEc2InstanceSnapshotJob operation of the 'AWS Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AwsNative # API Operation: StartRestoreEc2InstanceSnapshotJob $query = New-RscMutationAwsNative -StartRestoreEc2InstanceSnapshotJob # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED shouldPowerOn = $someBoolean # REQUIRED shouldRestoreTags = $someBoolean # OPTIONAL snapshotTypeToUseIfSourceExpired = $someSnapshotTypeToUseIfSourceExpired # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeToUseIfSourceExpired]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationAzure"> <summary> 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. </summary> <description> 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. </description> <example> Runs the AddCloudAccount operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: AddCloudAccount $query = New-RscMutationAzure -AddCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED sessionId = $someString # REQUIRED tenantDomainName = $someString # REQUIRED subscriptions = @( @{ # REQUIRED features = @( @{ # OPTIONAL resourceGroup = @{ # REQUIRED name = $someString # OPTIONAL tags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } # REQUIRED region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. } # REQUIRED featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL permissionsGroups = @( $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. ) } ) # REQUIRED subscription = @{ # REQUIRED nativeId = $someString # REQUIRED name = $someString } } ) # REQUIRED regions = @( $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddAzureCloudAccountReply </code> </example> <example> Runs the AddCloudAccountExocomputeConfigurations operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: AddCloudAccountExocomputeConfigurations $query = New-RscMutationAzure -AddCloudAccountExocomputeConfigurations # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED azureExocomputeRegionConfigs = @( @{ # REQUIRED region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. # REQUIRED subnetNativeId = $someString # REQUIRED isRscManaged = $someBoolean # OPTIONAL podSubnetNativeId = $someString # OPTIONAL podOverlayNetworkCidr = $someString } ) # OPTIONAL triggerHealthCheck = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddAzureCloudAccountExocomputeConfigurationsReply </code> </example> <example> Runs the AddCloudAccountWithoutOauth operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: AddCloudAccountWithoutOauth $query = New-RscMutationAzure -AddCloudAccountWithoutOauth # REQUIRED $query.Var.input = @{ # REQUIRED tenantDomainName = $someString # REQUIRED subscriptions = @( @{ # REQUIRED features = @( @{ # REQUIRED policyVersion = $someInt # OPTIONAL resourceGroup = @{ # REQUIRED name = $someString # OPTIONAL tags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } # REQUIRED region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. } # OPTIONAL specificFeatureInput = @{ # REQUIRED userAssignedManagedIdentityInput = @{ # REQUIRED name = $someString # REQUIRED resourceGroupName = $someString # REQUIRED principalId = $someString # REQUIRED region = $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. } } # REQUIRED featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL permissionsGroups = @( @{ # REQUIRED permissionsGroup = $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. # OPTIONAL version = $someInt } ) } ) # REQUIRED subscription = @{ # REQUIRED nativeId = $someString # REQUIRED name = $someString } } ) # REQUIRED regions = @( $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. ) # OPTIONAL azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddAzureCloudAccountWithoutOauthReply </code> </example> <example> Runs the BackupAdDirectory operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: BackupAdDirectory $query = New-RscMutationAzure -BackupAdDirectory # REQUIRED $query.Var.input = @{ # REQUIRED workloadFids = @( $someString ) # OPTIONAL snapshotRetentionSlaId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> <example> Runs the CompleteAdAppSetup operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CompleteAdAppSetup $query = New-RscMutationAzure -CompleteAdAppSetup # REQUIRED $query.Var.input = @{ # REQUIRED domainName = $someString # REQUIRED stateToken = $someString # OPTIONAL kmsSpec = @{ # OPTIONAL cloudType = $someO365AzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365AzureCloudType]) for enum values. # OPTIONAL tenantId = $someString # OPTIONAL kmsId = $someString # OPTIONAL appId = $someString # OPTIONAL appSecret = $someString # OPTIONAL keyName = $someString # OPTIONAL kekNameColossus = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CompleteAzureAdAppSetupReply </code> </example> <example> Runs the CompleteAdAppUpdate operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CompleteAdAppUpdate $query = New-RscMutationAzure -CompleteAdAppUpdate # REQUIRED $query.Var.input = @{ # REQUIRED workloadFid = $someString # REQUIRED stateToken = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the CompleteCloudAccountOauth operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CompleteCloudAccountOauth $query = New-RscMutationAzure -CompleteCloudAccountOauth # REQUIRED $query.Var.input = @{ # REQUIRED sessionId = $someString # REQUIRED tenantDomainName = $someString # REQUIRED authorizationCode = $someString # REQUIRED redirectUrl = $someString # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL appId = $someString # OPTIONAL appSecretKey = $someString # REQUIRED shouldSkipPermissionChecks = $someBoolean # OPTIONAL azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values. # OPTIONAL resource = $someAzureOauthResource # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureOauthResource]) for enum values. # OPTIONAL performBasicOauth = $someBoolean # OPTIONAL shouldKeepRefreshToken = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CompleteAzureCloudAccountOauthReply </code> </example> <example> Runs the CreateAccount operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateAccount $query = New-RscMutationAzure -CreateAccount # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # OPTIONAL description = $someString # REQUIRED subscriptionId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CloudAccount </code> </example> <example> Runs the CreateAutomaticTargetMapping operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateAutomaticTargetMapping $query = New-RscMutationAzure -CreateAutomaticTargetMapping # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED storageAccountName = $someString # REQUIRED accessKey = $someString # REQUIRED containerNamePrefix = $someString # REQUIRED cloudAccountId = $someString # REQUIRED instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values. # REQUIRED rsaKey = $someString # OPTIONAL computeSettings = @{ # OPTIONAL appId = $someString # OPTIONAL appSecretKey = $someString # OPTIONAL region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. # OPTIONAL generalPurposeStorageName = $someString # OPTIONAL generalPurposeStorageContainer = $someString # OPTIONAL resourceGroup = $someString # OPTIONAL virtualNetworkId = $someString # OPTIONAL subnetId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL cloudAccountId = $someString # OPTIONAL subscriptionId = $someString } # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL clusterUuidList = @( $someString ) # REQUIRED isConsolidationEnabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> <example> Runs the CreateCloudNativeRcvStorageSetting operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateCloudNativeRcvStorageSetting $query = New-RscMutationAzure -CreateCloudNativeRcvStorageSetting # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. # 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 </code> </example> <example> Runs the CreateCloudNativeStorageSetting operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateCloudNativeStorageSetting $query = New-RscMutationAzure -CreateCloudNativeStorageSetting # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED cloudAccountId = $someString # REQUIRED storageAccountName = $someString # REQUIRED containerName = $someString # OPTIONAL storageAccountTags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } # OPTIONAL storageAccountRegion = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. # REQUIRED storageTier = $someAzureStorageTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureStorageTier]) for enum values. # REQUIRED redundancy = $someAzureRedundancy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRedundancy]) for enum values. # REQUIRED subscriptionNativeId = $someString # REQUIRED cloudNativeLocTemplateType = $someCloudNativeLocTemplateType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLocTemplateType]) for enum values. # OPTIONAL cmkInfo = @( @{ # OPTIONAL keyVaultName = $someString # OPTIONAL keyName = $someString # OPTIONAL region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. } ) # OPTIONAL azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateCloudNativeAzureStorageSettingReply </code> </example> <example> Runs the CreateCluster operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateCluster $query = New-RscMutationAzure -CreateCluster # REQUIRED $query.Var.input = @{ # OPTIONAL cloudAccountId = $someString # OPTIONAL isEsType = $someBoolean # OPTIONAL keepClusterOnFailure = $someBoolean # OPTIONAL clusterConfig = @{ # OPTIONAL userEmail = $someString # OPTIONAL adminPassword = $someString # OPTIONAL clusterName = $someString # OPTIONAL numNodes = $someInt # OPTIONAL dnsSearchDomains = @( $someString ) # OPTIONAL dnsNameServers = @( $someString ) # OPTIONAL ntpServers = @( $someString ) # OPTIONAL azureEsConfig = @{ # OPTIONAL storageAccount = $someString # OPTIONAL resourceGroup = $someString # OPTIONAL storageSecret = $someString # OPTIONAL containerName = $someString # OPTIONAL shouldCreateContainer = $someBoolean # OPTIONAL enableImmutability = $someBoolean # OPTIONAL managedIdentity = @{ # OPTIONAL name = $someString # OPTIONAL clientId = $someString # OPTIONAL resourceGroup = $someString } } # OPTIONAL awsEsConfig = @{ # OPTIONAL bucketName = $someString # OPTIONAL shouldCreateBucket = $someBoolean # OPTIONAL enableObjectLock = $someBoolean # OPTIONAL enableImmutability = $someBoolean } } # OPTIONAL vmConfig = @{ # OPTIONAL resourceGroup = $someString # OPTIONAL cdmVersion = $someString # OPTIONAL location = $someString # OPTIONAL nodeSizeGb = $someInt # OPTIONAL networkResourceGroup = $someString # OPTIONAL vnetResourceGroup = $someString # OPTIONAL networkSecurityGroup = $someString # OPTIONAL networkSecurityResourceGroup = $someString # OPTIONAL vnet = $someString # OPTIONAL subnet = $someString # OPTIONAL tags = $someString # OPTIONAL vmImage = $someString # OPTIONAL cdmProduct = $someString # OPTIONAL availabilityZone = $someString # OPTIONAL vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values. # OPTIONAL instanceType = $someAzureInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureInstanceType]) for enum values. } # OPTIONAL validations = @( $someClusterCreateValidations # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterCreateValidations]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CcProvisionJobReply </code> </example> <example> Runs the CreateReaderTarget operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateReaderTarget $query = New-RscMutationAzure -CreateReaderTarget # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED clusterUuid = $someString # REQUIRED storageAccountName = $someString # REQUIRED accessKey = $someString # REQUIRED containerName = $someString # REQUIRED cloudAccountId = $someString # REQUIRED instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values. # OPTIONAL rsaKey = $someString # OPTIONAL computeSettings = @{ # OPTIONAL appId = $someString # OPTIONAL appSecretKey = $someString # OPTIONAL region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. # OPTIONAL generalPurposeStorageName = $someString # OPTIONAL generalPurposeStorageContainer = $someString # OPTIONAL resourceGroup = $someString # OPTIONAL virtualNetworkId = $someString # OPTIONAL subnetId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL cloudAccountId = $someString # OPTIONAL subscriptionId = $someString } # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # REQUIRED isConsolidationEnabled = $someBoolean # OPTIONAL immutabilitySettings = @{ # OPTIONAL lockDurationDays = $someInt } # REQUIRED readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values. # OPTIONAL retrievalTier = $someAzureRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRetrievalTier]) for enum values. # REQUIRED bypassProxy = $someBoolean # OPTIONAL azureKeyVaultKey = @{ # REQUIRED kmsKeyVaultId = $someString # REQUIRED keyName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the CreateSaasAppAad operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateSaasAppAad $query = New-RscMutationAzure -CreateSaasAppAad # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateAzureSaasAppAadReply </code> </example> <example> Runs the CreateTarget operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: CreateTarget $query = New-RscMutationAzure -CreateTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED name = $someString # REQUIRED storageAccountName = $someString # REQUIRED accessKey = $someString # REQUIRED containerName = $someString # REQUIRED cloudAccountId = $someString # REQUIRED instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values. # OPTIONAL rsaKey = $someString # OPTIONAL computeSettings = @{ # OPTIONAL appId = $someString # OPTIONAL appSecretKey = $someString # OPTIONAL region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. # OPTIONAL generalPurposeStorageName = $someString # OPTIONAL generalPurposeStorageContainer = $someString # OPTIONAL resourceGroup = $someString # OPTIONAL virtualNetworkId = $someString # OPTIONAL subnetId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL cloudAccountId = $someString # OPTIONAL subscriptionId = $someString } # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # REQUIRED isConsolidationEnabled = $someBoolean # OPTIONAL immutabilitySettings = @{ # OPTIONAL lockDurationDays = $someInt } # OPTIONAL retrievalTier = $someAzureRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRetrievalTier]) for enum values. # REQUIRED bypassProxy = $someBoolean # OPTIONAL azureKeyVaultKey = @{ # REQUIRED kmsKeyVaultId = $someString # REQUIRED keyName = $someString # REQUIRED keyVersion = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the DeleteAdDirectory operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: DeleteAdDirectory $query = New-RscMutationAzure -DeleteAdDirectory # REQUIRED $query.Var.input = @{ # REQUIRED workloadFid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the DeleteCloudAccount operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: DeleteCloudAccount $query = New-RscMutationAzure -DeleteCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED sessionId = $someString # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # REQUIRED azureSubscriptionRubrikIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DeleteAzureCloudAccountReply </code> </example> <example> Runs the DeleteCloudAccountExocomputeConfigurations operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: DeleteCloudAccountExocomputeConfigurations $query = New-RscMutationAzure -DeleteCloudAccountExocomputeConfigurations # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DeleteAzureCloudAccountExocomputeConfigurationsReply </code> </example> <example> Runs the DeleteCloudAccountWithoutOauth operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: DeleteCloudAccountWithoutOauth $query = New-RscMutationAzure -DeleteCloudAccountWithoutOauth # REQUIRED $query.Var.input = @{ # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # REQUIRED azureSubscriptionRubrikIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DeleteAzureCloudAccountWithoutOauthReply </code> </example> <example> Runs the MapCloudAccountExocomputeSubscription operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: MapCloudAccountExocomputeSubscription $query = New-RscMutationAzure -MapCloudAccountExocomputeSubscription # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountIds = @( $someString ) # REQUIRED exocomputeCloudAccountId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MapAzureCloudAccountExocomputeSubscriptionReply </code> </example> <example> Runs the MapCloudAccountToPersistentStorageLocation operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: MapCloudAccountToPersistentStorageLocation $query = New-RscMutationAzure -MapCloudAccountToPersistentStorageLocation # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountIds = @( $someString ) # REQUIRED persistentStorageId = $someString # REQUIRED azureNativeProtectionFeature = $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MapAzureCloudAccountToPersistentStorageLocationReply </code> </example> <example> Runs the OauthConsentComplete operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: OauthConsentComplete $query = New-RscMutationAzure -OauthConsentComplete # REQUIRED $query.Var.input = @{ # REQUIRED tenantId = $someString # REQUIRED code = $someString # REQUIRED stateToken = $someString # REQUIRED redirectUrl = $someString # OPTIONAL azureAppId = $someString # OPTIONAL azureAppSecret = $someString # REQUIRED azureCloudType = $someO365AzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365AzureCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the OauthConsentKickoff operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: OauthConsentKickoff $query = New-RscMutationAzure -OauthConsentKickoff # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AzureOauthConsentKickoffReply </code> </example> <example> Runs the RestoreAdObjectsWithPasswords operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: RestoreAdObjectsWithPasswords $query = New-RscMutationAzure -RestoreAdObjectsWithPasswords # REQUIRED $query.Var.input = @{ # REQUIRED workloadFid = $someString # REQUIRED snapshotFid = $someString # REQUIRED passwordByUserIdMap = @( @{ # REQUIRED userId = $someString # REQUIRED password = $someString } ) # REQUIRED objectTypeToIdMap = @( @{ # REQUIRED objectId = $someString # REQUIRED azureAdObjectType = $someAzureAdObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdObjectType]) for enum values. } ) # REQUIRED forceChangePasswordWithMfa = $someBoolean # REQUIRED relationshipRestoreMode = $someAzureAdRelationshipRestoreModeEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdRelationshipRestoreModeEnumType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RestoreAzureAdObjectsWithPasswordsReply </code> </example> <example> Runs the SetCloudAccountCustomerAppCredentials operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: SetCloudAccountCustomerAppCredentials $query = New-RscMutationAzure -SetCloudAccountCustomerAppCredentials # REQUIRED $query.Var.input = @{ # REQUIRED appId = $someString # REQUIRED appSecretKey = $someString # OPTIONAL appTenantId = $someString # OPTIONAL appName = $someString # OPTIONAL tenantDomainName = $someString # REQUIRED shouldReplace = $someBoolean # REQUIRED azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the StartAdAppSetup operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: StartAdAppSetup $query = New-RscMutationAzure -StartAdAppSetup # REQUIRED $query.Var.input = @{ # REQUIRED domainName = $someString # REQUIRED region = $someAzureAdRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAdRegion]) for enum values. # OPTIONAL azureAdApp = @{ # OPTIONAL clientId = $someString # OPTIONAL clientSecret = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: StartAzureAdAppSetupReply </code> </example> <example> Runs the StartAdAppUpdate operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: StartAdAppUpdate $query = New-RscMutationAzure -StartAdAppUpdate # REQUIRED $query.Var.input = @{ # REQUIRED workloadFid = $someString # OPTIONAL azureAdApp = @{ # OPTIONAL clientId = $someString # OPTIONAL clientSecret = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: StartAzureAdAppUpdateReply </code> </example> <example> Runs the StartCloudAccountOauth operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: StartCloudAccountOauth $query = New-RscMutationAzure -StartCloudAccountOauth # REQUIRED $query.Var.input = @{ # OPTIONAL tenantDomainName = $someString # OPTIONAL azureCloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: StartAzureCloudAccountOauthReply </code> </example> <example> Runs the StartDisableCloudAccountJob operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: StartDisableCloudAccountJob $query = New-RscMutationAzure -StartDisableCloudAccountJob # REQUIRED $query.Var.input = @{ # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # REQUIRED cloudAccountIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartExportSqlDatabaseDbJob operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: StartExportSqlDatabaseDbJob $query = New-RscMutationAzure -StartExportSqlDatabaseDbJob # REQUIRED $query.Var.input = @{ # REQUIRED sourceDatabaseRubrikId = $someString # REQUIRED destinationDatabaseName = $someString # OPTIONAL destinationServerRubrikId = $someString # OPTIONAL elasticPoolName = $someString # REQUIRED shouldExportTags = $someBoolean # OPTIONAL azureSqlDatabaseDbPitExportInput = @{ # REQUIRED restorePointInTime = $someDateTime # OPTIONAL dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values. } # OPTIONAL azureSqlDatabaseDbLtrExportInput = @{ # REQUIRED sourceSnapshotRubrikId = $someString # REQUIRED destinationResourceGroupName = $someString # REQUIRED destinationServerName = $someString # REQUIRED destinationRegionName = $someString # OPTIONAL dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values. } # OPTIONAL persistentBackupExportInput = @{ # REQUIRED sourceSnapshotRubrikId = $someString # OPTIONAL destinationServerCredentials = @{ # REQUIRED login = $someString # REQUIRED password = $someString } # OPTIONAL authMechanism = $someSqlAuthenticationMechanism # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SqlAuthenticationMechanism]) for enum values. # OPTIONAL sessionId = $someString # OPTIONAL dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values. } # OPTIONAL serviceTier = $someString # OPTIONAL serviceObjectiveName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartExportSqlManagedInstanceDbJob operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: StartExportSqlManagedInstanceDbJob $query = New-RscMutationAzure -StartExportSqlManagedInstanceDbJob # REQUIRED $query.Var.input = @{ # REQUIRED sourceManagedInstanceDatabaseRubrikId = $someString # OPTIONAL destinationManagedInstanceRubrikId = $someString # REQUIRED destinationDatabaseName = $someString # REQUIRED destinationManagedInstanceName = $someString # REQUIRED destinationResourceGroupName = $someString # OPTIONAL azureSqlManagedInstanceDbPitExportInput = @{ # REQUIRED restorePointInTime = $someDateTime } # OPTIONAL azureSqlManagedInstanceDbLtrExportInput = @{ # REQUIRED sourceSnapshotRubrikId = $someString # REQUIRED destinationRegionName = $someString } # OPTIONAL persistentBackupExportInput = @{ # REQUIRED sourceSnapshotRubrikId = $someString # OPTIONAL destinationServerCredentials = @{ # REQUIRED login = $someString # REQUIRED password = $someString } # OPTIONAL authMechanism = $someSqlAuthenticationMechanism # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SqlAuthenticationMechanism]) for enum values. # OPTIONAL sessionId = $someString # OPTIONAL dbBackupRedundancy = $someAzureSqlBackupStorageRedundancyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSqlBackupStorageRedundancyType]) for enum values. } # OPTIONAL serviceTier = $someString # OPTIONAL serviceObjectiveName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the UnmapCloudAccountExocomputeSubscription operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UnmapCloudAccountExocomputeSubscription $query = New-RscMutationAzure -UnmapCloudAccountExocomputeSubscription # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UnmapAzureCloudAccountExocomputeSubscriptionReply </code> </example> <example> Runs the UnmapPersistentStorageSubscription operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UnmapPersistentStorageSubscription $query = New-RscMutationAzure -UnmapPersistentStorageSubscription # REQUIRED $query.Var.input = @{ # REQUIRED applicationCloudAccountIds = @( $someString ) # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # REQUIRED unmappingValidationType = $someUnmappingValidationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UnmappingValidationType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateAccount operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateAccount $query = New-RscMutationAzure -UpdateAccount # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL description = $someString # OPTIONAL subscriptionId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CloudAccount </code> </example> <example> Runs the UpdateAutomaticTargetMapping operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateAutomaticTargetMapping $query = New-RscMutationAzure -UpdateAutomaticTargetMapping # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL storageAccountName = $someString # OPTIONAL accessKey = $someString # OPTIONAL cloudAccountId = $someString # OPTIONAL computeSettings = @{ # OPTIONAL appId = $someString # OPTIONAL appSecretKey = $someString # OPTIONAL region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. # OPTIONAL generalPurposeStorageName = $someString # OPTIONAL generalPurposeStorageContainer = $someString # OPTIONAL resourceGroup = $someString # OPTIONAL virtualNetworkId = $someString # OPTIONAL subnetId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL cloudAccountId = $someString # OPTIONAL subscriptionId = $someString } # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL clusterUuidList = @( $someString ) # OPTIONAL isConsolidationEnabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> <example> Runs the UpdateCloudAccount operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateCloudAccount $query = New-RscMutationAzure -UpdateCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED subscriptions = @( @{ # OPTIONAL id = $someString # OPTIONAL name = $someString } ) # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL regionsToAdd = @( $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. ) # OPTIONAL regionsToRemove = @( $someAzureCloudAccountRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudAccountRegion]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateAzureCloudAccountReply </code> </example> <example> Runs the UpdateCloudNativeRcvStorageSetting operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateCloudNativeRcvStorageSetting $query = New-RscMutationAzure -UpdateCloudNativeRcvStorageSetting # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED name = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateCloudNativeRcvAzureStorageSettingReply </code> </example> <example> Runs the UpdateCloudNativeStorageSetting operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateCloudNativeStorageSetting $query = New-RscMutationAzure -UpdateCloudNativeStorageSetting # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED name = $someString # REQUIRED storageAccountTags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } # REQUIRED storageTier = $someAzureStorageTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureStorageTier]) for enum values. # OPTIONAL cmkInfo = @( @{ # OPTIONAL keyVaultName = $someString # OPTIONAL keyName = $someString # OPTIONAL region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateCloudNativeAzureStorageSettingReply </code> </example> <example> Runs the UpdateCustomerAppPermissionForSql operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateCustomerAppPermissionForSql $query = New-RscMutationAzure -UpdateCustomerAppPermissionForSql # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateTarget operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateTarget $query = New-RscMutationAzure -UpdateTarget # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL storageAccountName = $someString # OPTIONAL accessKey = $someString # OPTIONAL cloudAccountId = $someString # OPTIONAL computeSettings = @{ # OPTIONAL appId = $someString # OPTIONAL appSecretKey = $someString # OPTIONAL region = $someAzureRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRegion]) for enum values. # OPTIONAL generalPurposeStorageName = $someString # OPTIONAL generalPurposeStorageContainer = $someString # OPTIONAL resourceGroup = $someString # OPTIONAL virtualNetworkId = $someString # OPTIONAL subnetId = $someString # OPTIONAL securityGroupId = $someString # OPTIONAL computeProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL cloudAccountId = $someString # OPTIONAL subscriptionId = $someString } # OPTIONAL proxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL isConsolidationEnabled = $someBoolean # OPTIONAL immutabilitySettings = @{ # OPTIONAL lockDurationDays = $someInt } # OPTIONAL retrievalTier = $someAzureRetrievalTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureRetrievalTier]) for enum values. # REQUIRED bypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the UpdateTenantForSubscription operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpdateTenantForSubscription $query = New-RscMutationAzure -UpdateTenantForSubscription # REQUIRED $query.Var.input = @{ # REQUIRED customerSubscriptionId = $someString # REQUIRED tenantDomainName = $someString # REQUIRED cloudType = $someAzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureCloudType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpgradeCloudAccount operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpgradeCloudAccount $query = New-RscMutationAzure -UpgradeCloudAccount # REQUIRED $query.Var.input = @{ # REQUIRED sessionId = $someString # OPTIONAL features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) # OPTIONAL featuresToUpgrade = @( @{ # REQUIRED featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # REQUIRED permissionsGroups = @( $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. ) } ) # REQUIRED azureSubscriptionRubrikIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpgradeAzureCloudAccountReply </code> </example> <example> Runs the UpgradeCloudAccountPermissionsWithoutOauth operation of the 'Azure' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Azure # API Operation: UpgradeCloudAccountPermissionsWithoutOauth $query = New-RscMutationAzure -UpgradeCloudAccountPermissionsWithoutOauth # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # OPTIONAL feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # OPTIONAL featureToUpgrade = @( @{ # REQUIRED featureType = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. # REQUIRED permissionsGroups = @( $somePermissionsGroup # Call [Enum]::GetValues([RubrikSecurityCloud.Types.PermissionsGroup]) for enum values. ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpgradeAzureCloudAccountPermissionsWithoutOauthReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationAzureNative"> <summary> 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. </summary> <description> 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. </description> <example> Runs the ExcludeManagedDisksFromSnapshot operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: ExcludeManagedDisksFromSnapshot $query = New-RscMutationAzureNative -ExcludeManagedDisksFromSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED virtualMachineRubrikId = $someString # REQUIRED managedDiskExclusions = @( @{ # REQUIRED managedDiskRubrikId = $someString # REQUIRED isExcludedFromSnapshot = $someBoolean } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the StartCreateManagedDiskSnapshotsJob operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: StartCreateManagedDiskSnapshotsJob $query = New-RscMutationAzureNative -StartCreateManagedDiskSnapshotsJob # REQUIRED $query.Var.input = @{ # REQUIRED managedDiskRubrikIds = @( $someString ) # OPTIONAL retentionSlaId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartCreateVirtualMachineSnapshotsJob operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: StartCreateVirtualMachineSnapshotsJob $query = New-RscMutationAzureNative -StartCreateVirtualMachineSnapshotsJob # REQUIRED $query.Var.input = @{ # REQUIRED virtualMachineRubrikIds = @( $someString ) # OPTIONAL retentionSlaId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartDisableSubscriptionProtectionJob operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: StartDisableSubscriptionProtectionJob $query = New-RscMutationAzureNative -StartDisableSubscriptionProtectionJob # REQUIRED $query.Var.input = @{ # REQUIRED azureSubscriptionRubrikId = $someString # REQUIRED shouldDeleteNativeSnapshots = $someBoolean # REQUIRED azureNativeProtectionFeature = $someAzureNativeProtectionFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeProtectionFeature]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartExportManagedDiskJob operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: StartExportManagedDiskJob $query = New-RscMutationAzureNative -StartExportManagedDiskJob # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED diskName = $someString # OPTIONAL diskEncryptionSetNativeId = $someString # REQUIRED diskStorageTier = $someAzureNativeManagedDiskType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeManagedDiskType]) for enum values. # REQUIRED diskSize = $someInt # REQUIRED resourceGroup = $someString # REQUIRED destinationRegion = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values. # OPTIONAL destinationAvailabilityZone = $someString # OPTIONAL destinationSubscriptionRubrikId = $someString # REQUIRED shouldExportTags = $someBoolean # REQUIRED shouldReplaceAttachedManagedDisk = $someBoolean # OPTIONAL shouldUseReplica = $someBoolean # OPTIONAL snapshotType = $someAzureSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSnapshotType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartExportVirtualMachineJob operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: StartExportVirtualMachineJob $query = New-RscMutationAzureNative -StartExportVirtualMachineJob # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED virtualMachineName = $someString # OPTIONAL diskEncryptionSetNativeId = $someString # REQUIRED resourceGroupName = $someString # REQUIRED destinationRegion = $someAzureNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegion]) for enum values. # OPTIONAL destinationAvailabilityZone = $someString # OPTIONAL destinationSubscriptionRubrikId = $someString # REQUIRED virtualMachineSize = $someString # REQUIRED subnetNativeId = $someString # OPTIONAL networkSecurityGroupNativeId = $someString # REQUIRED shouldExportTags = $someBoolean # REQUIRED shouldPowerOff = $someBoolean # OPTIONAL shouldUseReplica = $someBoolean # OPTIONAL availabilitySetNativeId = $someString # OPTIONAL shouldEnableAcceleratedNetworking = $someBoolean # OPTIONAL snapshotType = $someAzureSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureSnapshotType]) for enum values. # OPTIONAL recoveryDiskIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartRefreshSubscriptionsJob operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: StartRefreshSubscriptionsJob $query = New-RscMutationAzureNative -StartRefreshSubscriptionsJob # REQUIRED $query.Var.input = @{ # REQUIRED azureSubscriptionRubrikIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartRestoreVirtualMachineJob operation of the 'Azure Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureNative # API Operation: StartRestoreVirtualMachineJob $query = New-RscMutationAzureNative -StartRestoreVirtualMachineJob # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED shouldPowerOn = $someBoolean # REQUIRED shouldRestoreTags = $someBoolean # OPTIONAL snapshotTypeToUseIfSourceExpired = $someSnapshotTypeForRestoreIfSourceExpired # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotTypeForRestoreIfSourceExpired]) for enum values. # OPTIONAL recoveryDiskIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationAzureO365"> <summary> Create a new RscQuery object for any of the 1 operations in the 'Azure Office365' API domain: ['SetupExocompute']. </summary> <description> 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. </description> <example> Runs the SetupExocompute operation of the 'Azure Office365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: AzureO365 # API Operation: SetupExocompute $query = New-RscMutationAzureO365 -SetupExocompute # REQUIRED $query.Var.tenantId = $someString # REQUIRED $query.Var.subscriptionId = $someString # REQUIRED $query.Var.exocomputeConfig = @{ # REQUIRED regionName = $someString # OPTIONAL newGroupConfig = @{ # OPTIONAL name = $someString # OPTIONAL failoverGroupId = $someString } # OPTIONAL existingGroupConfig = @{ # OPTIONAL name = $someString # OPTIONAL failoverGroupId = $someString } # OPTIONAL newComputeConfig = @{ # OPTIONAL vnetName = $someString # OPTIONAL subnetName = $someString # OPTIONAL securityGroupName = $someString # OPTIONAL failoverVnetName = $someString # OPTIONAL failoverSubnetName = $someString # OPTIONAL failoverSecurityGroupName = $someString } # OPTIONAL existingComputeConfig = @{ # OPTIONAL vnetId = $someString # OPTIONAL subnetId = $someString } # OPTIONAL newStorageAccountConfig = @{ # OPTIONAL name = $someString # OPTIONAL tier = $someStorageAccountTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountTier]) for enum values. # OPTIONAL sku = $someStorageAccountSku # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountSku]) for enum values. # OPTIONAL storages = @( @{ # OPTIONAL name = $someString # OPTIONAL tier = $someStorageAccountTier # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountTier]) for enum values. # OPTIONAL sku = $someStorageAccountSku # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageAccountSku]) for enum values. # OPTIONAL containerImmutabilityStatus = $someColossusStorageContainerImmutabilityStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ColossusStorageContainerImmutabilityStatus]) for enum values. # OPTIONAL versioningEnabled = $someBoolean } ) } # OPTIONAL existingStorageAccountConfig = @{ # OPTIONAL id = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SetupAzureO365ExocomputeResp </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationCassandra"> <summary> Create a new RscQuery object for any of the 5 operations in the 'Cassandra' API domain: BulkDeleteSources, CreateSource, DeleteSource, RecoverSource, or UpdateSource. </summary> <description> 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. </description> <example> Runs the BulkDeleteSources operation of the 'Cassandra' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cassandra # API Operation: BulkDeleteSources $query = New-RscMutationCassandra -BulkDeleteSources # REQUIRED $query.Var.input = @{ # OPTIONAL sourceType = $someV2BulkDeleteMosaicSourcesRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2BulkDeleteMosaicSourcesRequestSourceType]) for enum values. # REQUIRED clusterUuid = $someString # REQUIRED sourceData = @{ # OPTIONAL async = $someBoolean # REQUIRED sourceNames = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the CreateSource operation of the 'Cassandra' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cassandra # API Operation: CreateSource $query = New-RscMutationCassandra -CreateSource # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED sourceData = @{ # OPTIONAL async = $someBoolean # OPTIONAL cassandraYaml = @( $someString ) # OPTIONAL dseYaml = @( $someString ) # OPTIONAL enableSsl = $someBoolean # OPTIONAL httpsCertificate = $someString # OPTIONAL ignoreSecondaries = @( $someString ) # OPTIONAL jmxPassword = $someString # OPTIONAL jmxUser = $someString # OPTIONAL parameterEncoded = $someBoolean # OPTIONAL sourceAuthKey = $someString # OPTIONAL sourceAuthKeyfile = $someString # OPTIONAL sourceAuthPassphrase = $someString # OPTIONAL sourceDriverPassword = $someString # OPTIONAL sourceDriverUser = $someString # OPTIONAL sourceHttpsPort = $someString # OPTIONAL sourcePassword = $someString # OPTIONAL sourcePort = $someString # OPTIONAL sourceRpcPort = $someString # OPTIONAL sourceSshPort = $someString # OPTIONAL sourceUser = $someString # OPTIONAL sslCaCerts = $someString # OPTIONAL sslCertfile = $someString # OPTIONAL sslKeyfile = $someString # REQUIRED sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values. # OPTIONAL sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values. # REQUIRED sourceIp = @( $someString ) # REQUIRED sourceName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the DeleteSource operation of the 'Cassandra' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cassandra # API Operation: DeleteSource $query = New-RscMutationCassandra -DeleteSource # REQUIRED $query.Var.input = @{ # OPTIONAL sourceType = $someV2DeleteMosaicSourceRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2DeleteMosaicSourceRequestSourceType]) for enum values. # REQUIRED clusterUuid = $someString # REQUIRED sourceName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the RecoverSource operation of the 'Cassandra' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cassandra # API Operation: RecoverSource $query = New-RscMutationCassandra -RecoverSource # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED recoveryData = @{ # OPTIONAL destinationSourceName = $someString # OPTIONAL keyspaceConfig = $someString # OPTIONAL maxDiskUsage = $someString # OPTIONAL restoreDbUserPwd = $someString # OPTIONAL restoreDbUsername = $someString # OPTIONAL startTimestamp = $someInt # OPTIONAL targetEncryptionKey = $someString # OPTIONAL targetQuery = $someString # OPTIONAL sourceType = $someMosaicRetrieveRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicRetrieveRequestSourceType]) for enum values. # OPTIONAL destinationManagementObjects = @{ # OPTIONAL databases = @( @{ # OPTIONAL dbName = $someString # OPTIONAL tables = @( $someString ) } ) } # REQUIRED destinationPath = $someString # REQUIRED managementObjects = @{ # OPTIONAL databases = @( @{ # OPTIONAL dbName = $someString # OPTIONAL tables = @( $someString ) } ) } # REQUIRED parameterEncoded = $someBoolean # REQUIRED sourceName = $someString # REQUIRED versionTime = $someInt } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the UpdateSource operation of the 'Cassandra' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cassandra # API Operation: UpdateSource $query = New-RscMutationCassandra -UpdateSource # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED sourceData = @{ # OPTIONAL async = $someBoolean # OPTIONAL cassandraYaml = @( $someString ) # OPTIONAL dseYaml = @( $someString ) # OPTIONAL enableSsl = $someBoolean # OPTIONAL httpsCertificate = $someString # OPTIONAL ignoreSecondaries = @( $someString ) # OPTIONAL jmxPassword = $someString # OPTIONAL jmxUser = $someString # OPTIONAL parameterEncoded = $someBoolean # OPTIONAL sourceAuthKey = $someString # OPTIONAL sourceAuthKeyfile = $someString # OPTIONAL sourceAuthPassphrase = $someString # OPTIONAL sourceDriverPassword = $someString # OPTIONAL sourceDriverUser = $someString # OPTIONAL sourceHttpsPort = $someString # OPTIONAL sourcePassword = $someString # OPTIONAL sourcePort = $someString # OPTIONAL sourceRpcPort = $someString # OPTIONAL sourceSshPort = $someString # OPTIONAL sourceUser = $someString # OPTIONAL sslCaCerts = $someString # OPTIONAL sslCertfile = $someString # OPTIONAL sslKeyfile = $someString # REQUIRED sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values. # OPTIONAL sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values. # REQUIRED sourceIp = @( $someString ) # REQUIRED sourceName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationCertificate"> <summary> 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. </summary> <description> 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. </description> <example> Runs the AddClusterCertificate operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: AddClusterCertificate $query = New-RscMutationCertificate -AddClusterCertificate # REQUIRED $query.Var.input = @{ # REQUIRED certImportRequest = @{ # OPTIONAL csrId = $someString # OPTIONAL description = $someString # OPTIONAL privateKey = $someString # OPTIONAL isTrusted = $someBoolean # REQUIRED name = $someString # REQUIRED pemFile = $someString } # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddClusterCertificateReply </code> </example> <example> Runs the AddGlobalCertificate operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: AddGlobalCertificate $query = New-RscMutationCertificate -AddGlobalCertificate # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # OPTIONAL description = $someString # OPTIONAL privateKey = $someString # REQUIRED certificate = $someString # OPTIONAL clusters = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED isTrusted = $someBoolean } ) # OPTIONAL csrFid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddGlobalCertificateReply </code> </example> <example> Runs the Delete operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: Delete $query = New-RscMutationCertificate -Delete # REQUIRED $query.Var.certificateId = $someInt64 # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DeleteCsr operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: DeleteCsr $query = New-RscMutationCertificate -DeleteCsr # REQUIRED $query.Var.input = @{ # REQUIRED csrFids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteGlobalCertificate operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: DeleteGlobalCertificate $query = New-RscMutationCertificate -DeleteGlobalCertificate # REQUIRED $query.Var.input = @{ # REQUIRED certificateId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DeleteGlobalCertificateReply </code> </example> <example> Runs the GenerateCsr operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: GenerateCsr $query = New-RscMutationCertificate -GenerateCsr # REQUIRED $query.Var.name = $someString # REQUIRED $query.Var.hostnames = @( $someString ) # OPTIONAL $query.Var.organization = $someString # OPTIONAL $query.Var.organizationUnit = $someString # OPTIONAL $query.Var.country = $someString # OPTIONAL $query.Var.state = $someString # OPTIONAL $query.Var.city = $someString # OPTIONAL $query.Var.email = $someString # OPTIONAL $query.Var.surname = $someString # OPTIONAL $query.Var.userId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Csr </code> </example> <example> Runs the MarkAgentSecondary operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: MarkAgentSecondary $query = New-RscMutationCertificate -MarkAgentSecondary # REQUIRED $query.Var.input = @{ # REQUIRED certId = $someString # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MarkAgentSecondaryCertificateReply </code> </example> <example> Runs the SetSso operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: SetSso $query = New-RscMutationCertificate -SetSso # REQUIRED $query.Var.input = @{ # REQUIRED certificateId = $someInt # REQUIRED certificateType = $someSsoCertificateType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SsoCertificateType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the SetWebSigned operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: SetWebSigned $query = New-RscMutationCertificate -SetWebSigned # REQUIRED $query.Var.input = @{ # REQUIRED certificatePayload = @{ # REQUIRED certificateId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the Update operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: Update $query = New-RscMutationCertificate -Update # REQUIRED $query.Var.certificateId = $someInt64 # OPTIONAL $query.Var.name = $someString # OPTIONAL $query.Var.description = $someString # OPTIONAL $query.Var.certificate = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the UpdateGlobalCertificate operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: UpdateGlobalCertificate $query = New-RscMutationCertificate -UpdateGlobalCertificate # REQUIRED $query.Var.input = @{ # REQUIRED certificateId = $someString # OPTIONAL name = $someString # OPTIONAL description = $someString # REQUIRED clusters = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED isTrusted = $someBoolean } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateGlobalCertificateReply </code> </example> <example> Runs the UpdateHost operation of the 'Certificates' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Certificate # API Operation: UpdateHost $query = New-RscMutationCertificate -UpdateHost # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateCertificateHostReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationCloudAccount"> <summary> Create a new RscQuery object for any of the 2 operations in the 'Cloud Account' API domain: MapExocomputeAccount, or UnmapExocomputeAccount. </summary> <description> 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. </description> <example> Runs the MapExocomputeAccount operation of the 'Cloud Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudAccount # API Operation: MapExocomputeAccount $query = New-RscMutationCloudAccount -MapExocomputeAccount # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountIds = @( $someString ) # REQUIRED exocomputeCloudAccountId = $someString # REQUIRED cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MapCloudAccountExocomputeAccountReply </code> </example> <example> Runs the UnmapExocomputeAccount operation of the 'Cloud Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudAccount # API Operation: UnmapExocomputeAccount $query = New-RscMutationCloudAccount -UnmapExocomputeAccount # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountIds = @( $someString ) # REQUIRED cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UnmapCloudAccountExocomputeAccountReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationCloudNative"> <summary> Create a new RscQuery object for any of the 13 operations in the 'Cloud Native' API domain: AddSqlServerBackupCredentials, CheckRbaConnectivity, ClearSqlServerBackupCredentials, CreateLabelRule, CreateTagRule, DeleteLabelRule, DeleteTagRule, DownloadFiles, SetupSqlServerBackup, StartSnapshotsIndexJob, UpdateIndexingStatus, UpdateLabelRule, or UpdateTagRule. </summary> <description> New-RscMutationCloudNative creates a new mutation object for operations in the 'Cloud Native' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 13 operations in the 'Cloud Native' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddSqlServerBackupCredentials, CheckRbaConnectivity, ClearSqlServerBackupCredentials, CreateLabelRule, CreateTagRule, DeleteLabelRule, DeleteTagRule, DownloadFiles, SetupSqlServerBackup, StartSnapshotsIndexJob, UpdateIndexingStatus, UpdateLabelRule, or UpdateTagRule. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCloudNative -AddSqlServerBackupCredentials).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCloudNative -AddSqlServerBackupCredentials).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddSqlServerBackupCredentials operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: AddSqlServerBackupCredentials $query = New-RscMutationCloudNative -AddSqlServerBackupCredentials # REQUIRED $query.Var.input = @{ # REQUIRED objectIds = @( $someString ) # REQUIRED workloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. # REQUIRED backupCredentials = @{ # REQUIRED login = $someString # REQUIRED password = $someString } # OPTIONAL logicAppName = $someString # OPTIONAL logicAppApiKey = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddCloudNativeSqlServerBackupCredentialsReply </code> </example> <example> Runs the CheckRbaConnectivity operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: CheckRbaConnectivity $query = New-RscMutationCloudNative -CheckRbaConnectivity # REQUIRED $query.Var.input = @{ # REQUIRED workloadIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CloudNativeCheckRbaConnectivityReply </code> </example> <example> Runs the ClearSqlServerBackupCredentials operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: ClearSqlServerBackupCredentials $query = New-RscMutationCloudNative -ClearSqlServerBackupCredentials # REQUIRED $query.Var.input = @{ # REQUIRED objectIds = @( $someString ) # REQUIRED workloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ClearCloudNativeSqlServerBackupCredentialsReply </code> </example> <example> Runs the CreateLabelRule operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: CreateLabelRule $query = New-RscMutationCloudNative -CreateLabelRule # REQUIRED $query.Var.input = @{ # REQUIRED objectType = $someCloudNativeLabelObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeLabelObjectType]) for enum values. # REQUIRED labelRuleName = $someString # REQUIRED label = @{ # REQUIRED labelKey = $someString # REQUIRED labelValue = $someString # REQUIRED matchAllValues = $someBoolean } # OPTIONAL slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values. # OPTIONAL slaId = $someString # OPTIONAL cloudNativeAccountIds = @{ # OPTIONAL awsNativeAccountIds = @( $someString ) # OPTIONAL azureNativeSubscriptionIds = @( $someString ) # OPTIONAL gcpNativeProjectIds = @( $someString ) } # OPTIONAL applyToAllCloudAccounts = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateCloudNativeLabelRuleReply </code> </example> <example> Runs the CreateTagRule operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: CreateTagRule $query = New-RscMutationCloudNative -CreateTagRule # REQUIRED $query.Var.input = @{ # REQUIRED objectType = $someCloudNativeTagObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeTagObjectType]) for enum values. # REQUIRED tagRuleName = $someString # REQUIRED tag = @{ # REQUIRED tagKey = $someString # REQUIRED tagValue = $someString # REQUIRED matchAllValues = $someBoolean } # OPTIONAL slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values. # OPTIONAL slaId = $someString # OPTIONAL cloudNativeAccountIds = @{ # OPTIONAL awsNativeAccountIds = @( $someString ) # OPTIONAL azureNativeSubscriptionIds = @( $someString ) # OPTIONAL gcpNativeProjectIds = @( $someString ) } # OPTIONAL applyToAllCloudAccounts = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateCloudNativeTagRuleReply </code> </example> <example> Runs the DeleteLabelRule operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: DeleteLabelRule $query = New-RscMutationCloudNative -DeleteLabelRule # REQUIRED $query.Var.input = @{ # REQUIRED ruleId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteTagRule operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: DeleteTagRule $query = New-RscMutationCloudNative -DeleteTagRule # REQUIRED $query.Var.input = @{ # REQUIRED ruleId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DownloadFiles operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: DownloadFiles $query = New-RscMutationCloudNative -DownloadFiles # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED filePaths = @( $someString ) # OPTIONAL snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values. # REQUIRED fileRecoveryLocationDetails = @{ # OPTIONAL cloudDownloadLocationDetails = @{ # REQUIRED downloadLocation = $someString # REQUIRED createDownloadLocation = $someBoolean # OPTIONAL tags = @( @{ # REQUIRED tagKey = $someString # REQUIRED tagValue = $someString # REQUIRED matchAllValues = $someBoolean } ) } # OPTIONAL vmDownloadLocationDetails = @{ # REQUIRED id = $someString # OPTIONAL pathToRecover = $someString } } # REQUIRED downloadType = $someFileDownloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileDownloadType]) for enum values. # OPTIONAL exocomputeCloudNativeAccountId = $someString # OPTIONAL exocomputeRegion = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadFilesReply </code> </example> <example> Runs the SetupSqlServerBackup operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: SetupSqlServerBackup $query = New-RscMutationCloudNative -SetupSqlServerBackup # REQUIRED $query.Var.input = @{ # REQUIRED databaseIds = @( $someString ) # OPTIONAL adminCredentials = @{ # REQUIRED login = $someString # REQUIRED password = $someString } # OPTIONAL authMechanism = $someSqlAuthenticationMechanism # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SqlAuthenticationMechanism]) for enum values. # OPTIONAL sessionId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the StartSnapshotsIndexJob operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: StartSnapshotsIndexJob $query = New-RscMutationCloudNative -StartSnapshotsIndexJob # REQUIRED $query.Var.input = @{ # REQUIRED snapshotIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the UpdateIndexingStatus operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: UpdateIndexingStatus $query = New-RscMutationCloudNative -UpdateIndexingStatus # REQUIRED $query.Var.input = @{ # REQUIRED workloadIds = @( $someString ) # REQUIRED isIndexingEnabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateCloudNativeIndexingStatusReply </code> </example> <example> Runs the UpdateLabelRule operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: UpdateLabelRule $query = New-RscMutationCloudNative -UpdateLabelRule # REQUIRED $query.Var.input = @{ # REQUIRED labelRuleId = $someString # REQUIRED labelRuleName = $someString # OPTIONAL slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values. # OPTIONAL slaId = $someString # OPTIONAL cloudNativeAccountIds = @{ # OPTIONAL awsNativeAccountIds = @( $someString ) # OPTIONAL azureNativeSubscriptionIds = @( $someString ) # OPTIONAL gcpNativeProjectIds = @( $someString ) } # OPTIONAL applyToAllCloudAccounts = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateTagRule operation of the 'Cloud Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CloudNative # API Operation: UpdateTagRule $query = New-RscMutationCloudNative -UpdateTagRule # REQUIRED $query.Var.input = @{ # REQUIRED tagRuleId = $someString # REQUIRED tagRuleName = $someString # OPTIONAL slaAssignType = $someTagRuleSlaAssignType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TagRuleSlaAssignType]) for enum values. # OPTIONAL slaId = $someString # OPTIONAL cloudNativeAccountIds = @{ # OPTIONAL awsNativeAccountIds = @( $someString ) # OPTIONAL azureNativeSubscriptionIds = @( $someString ) # OPTIONAL gcpNativeProjectIds = @( $someString ) } # OPTIONAL applyToAllCloudAccounts = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationCluster"> <summary> Create a new RscQuery object for any of the 18 operations in the 'Cluster' API domain: AddClusterNodes, AddClusterRoute, AddNodesToCloud, DeleteClusterRoute, GenerateClusterRegistrationToken, RecoverCloud, RegisterCloud, ReleasePersistentExo, RemoveCdm, RemoveClusterNodes, RequestPersistentExo, SetMissingClusterStatus, UpdateClusterDefaultAddress, UpdateClusterLocation, UpdateClusterNtpServers, UpdateClusterPauseStatus, UpdateClusterSettings, or UpdatePreviewerClusterConfig. </summary> <description> 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 18 operations in the 'Cluster' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddClusterNodes, AddClusterRoute, AddNodesToCloud, DeleteClusterRoute, GenerateClusterRegistrationToken, RecoverCloud, RegisterCloud, ReleasePersistentExo, RemoveCdm, RemoveClusterNodes, RequestPersistentExo, SetMissingClusterStatus, UpdateClusterDefaultAddress, UpdateClusterLocation, UpdateClusterNtpServers, UpdateClusterPauseStatus, UpdateClusterSettings, or UpdatePreviewerClusterConfig. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCluster -AddClusterNodes).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationCluster -AddClusterNodes).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddClusterNodes operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: AddClusterNodes $query = New-RscMutationCluster -AddClusterNodes # REQUIRED $query.Var.AddClusterNodesInput = @{ # REQUIRED clusterUuid = $someString # REQUIRED nodesMap = @( @{ # OPTIONAL key = $someString # REQUIRED value = @{ # OPTIONAL dataIpConfig = @{ # OPTIONAL vlan = $someInt # REQUIRED address = $someString # REQUIRED gateway = $someString # REQUIRED netmask = $someString } # REQUIRED ipmiIpConfig = @{ # OPTIONAL vlan = $someInt # REQUIRED address = $someString # REQUIRED gateway = $someString # REQUIRED netmask = $someString } # REQUIRED managementIpConfig = @{ # OPTIONAL vlan = $someInt # REQUIRED address = $someString # REQUIRED gateway = $someString # REQUIRED netmask = $someString } # OPTIONAL vlanIpConfigs = @( @{ # REQUIRED ip = $someString # REQUIRED vlan = $someInt } ) } } ) # REQUIRED request = @{ # OPTIONAL encryptionPassword = $someString # OPTIONAL isIpv4ManualDiscoveryMode = $someBoolean # OPTIONAL isLinkLocalIpv4Mode = $someBoolean # REQUIRED ipmiPassword = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddClusterNodesReply </code> </example> <example> Runs the AddClusterRoute operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: AddClusterRoute $query = New-RscMutationCluster -AddClusterRoute # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED routeConfig = @{ # REQUIRED device = $someString # REQUIRED gateway = $someString # REQUIRED netmask = $someString # REQUIRED network = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddClusterRouteReply </code> </example> <example> Runs the AddNodesToCloud operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: AddNodesToCloud $query = New-RscMutationCluster -AddNodesToCloud # REQUIRED $query.Var.input = @{ # OPTIONAL numberOfNodes = $someInt # OPTIONAL awsImageId = $someString # OPTIONAL azureImageName = $someString # REQUIRED cloudAccountId = $someString # REQUIRED vendor = $someCcpVendorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CcpVendorType]) for enum values. # REQUIRED clusterUuid = $someString # REQUIRED shouldKeepResourcesOnFailure = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CcProvisionJobReply </code> </example> <example> Runs the DeleteClusterRoute operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: DeleteClusterRoute $query = New-RscMutationCluster -DeleteClusterRoute # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED routeConfig = @{ # REQUIRED netmask = $someString # REQUIRED network = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the GenerateClusterRegistrationToken operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: GenerateClusterRegistrationToken $query = New-RscMutationCluster -GenerateClusterRegistrationToken # OPTIONAL $query.Var.input = @{ # OPTIONAL managedByPolaris = $someBoolean # OPTIONAL nodeConfigs = @( @{ # OPTIONAL id = $someString # OPTIONAL manufactureTime = $someDateTime # OPTIONAL serial = $someString # OPTIONAL systemUuid = $someString # OPTIONAL teleportToken = $someString # OPTIONAL clusterUuid = $someString # OPTIONAL platform = $someString # OPTIONAL capacity = $someString # OPTIONAL isEntitled = $someBoolean } ) # OPTIONAL isOfflineRegistration = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ClusterRegistrationToken </code> </example> <example> Runs the RecoverCloud operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: RecoverCloud $query = New-RscMutationCluster -RecoverCloud # REQUIRED $query.Var.input = @{ # OPTIONAL adminPassword = $someString # OPTIONAL userEmail = $someString # REQUIRED cloudAccountId = $someString # REQUIRED clusterUuid = $someString # OPTIONAL azureEsResourceGroup = $someString # OPTIONAL azureVmConfig = @{ # OPTIONAL resourceGroup = $someString # OPTIONAL cdmVersion = $someString # OPTIONAL location = $someString # OPTIONAL nodeSizeGb = $someInt # OPTIONAL networkResourceGroup = $someString # OPTIONAL vnetResourceGroup = $someString # OPTIONAL networkSecurityGroup = $someString # OPTIONAL networkSecurityResourceGroup = $someString # OPTIONAL vnet = $someString # OPTIONAL subnet = $someString # OPTIONAL tags = $someString # OPTIONAL vmImage = $someString # OPTIONAL cdmProduct = $someString # OPTIONAL availabilityZone = $someString # OPTIONAL vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values. # OPTIONAL instanceType = $someAzureInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureInstanceType]) for enum values. } # OPTIONAL awsVmConfig = @{ # OPTIONAL cdmVersion = $someString # OPTIONAL nodeSizeGb = $someInt # OPTIONAL subnet = $someString # OPTIONAL tags = $someString # OPTIONAL imageId = $someString # OPTIONAL instanceProfileName = $someString # OPTIONAL cdmProduct = $someString # OPTIONAL vmType = $someVmType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VmType]) for enum values. # OPTIONAL securityGroups = @( $someString ) # OPTIONAL instanceType = $someAwsInstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsInstanceType]) for enum values. # OPTIONAL networkConfig = @( @{ # OPTIONAL availabilityZone = $someString # OPTIONAL subnet = $someString } ) } # OPTIONAL awsRegion = $someString # REQUIRED shouldDisableAwsApiTermination = $someBoolean # REQUIRED shouldKeepClusterOnFailure = $someBoolean # OPTIONAL ntpServers = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CcProvisionJobReply </code> </example> <example> Runs the RegisterCloud operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: RegisterCloud $query = New-RscMutationCluster -RegisterCloud # REQUIRED $query.Var.input = @{ # OPTIONAL clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RegisterCloudClusterReply </code> </example> <example> Runs the ReleasePersistentExo operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: ReleasePersistentExo $query = New-RscMutationCluster -ReleasePersistentExo # REQUIRED $query.Var.input = @{ # REQUIRED cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values. # REQUIRED exocomputeConfigId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the RemoveCdm operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: RemoveCdm $query = New-RscMutationCluster -RemoveCdm # REQUIRED $query.Var.clusterUUID = $someString # REQUIRED $query.Var.isForce = $someBoolean # OPTIONAL $query.Var.expireInDays = $someInt64 # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the RemoveClusterNodes operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: RemoveClusterNodes $query = New-RscMutationCluster -RemoveClusterNodes # REQUIRED $query.Var.input = @{ # OPTIONAL nodeIds = @( $someString ) # OPTIONAL useQuickDrain = $someBoolean # REQUIRED clusterUuid = $someString # OPTIONAL nodeMetadata = @( @{ # OPTIONAL nodeId = $someString # OPTIONAL chassisId = $someString # OPTIONAL platform = $someClusterNodePlatformType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterNodePlatformType]) for enum values. # OPTIONAL status = $someClusterNodeStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterNodeStatus]) for enum values. # OPTIONAL useQuickDrain = $someBoolean } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CcProvisionJobReply </code> </example> <example> Runs the RequestPersistentExo operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: RequestPersistentExo $query = New-RscMutationCluster -RequestPersistentExo # REQUIRED $query.Var.input = @{ # REQUIRED cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values. # REQUIRED exocomputeConfigId = $someString # OPTIONAL durationInDays = $someInt # OPTIONAL azureSpecificClusterParams = @{ # OPTIONAL nodeType = $someString } # OPTIONAL awsSpecificClusterParams = @{ # OPTIONAL nodeKeypairName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestPersistentExoclusterReply </code> </example> <example> Runs the SetMissingClusterStatus operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: SetMissingClusterStatus $query = New-RscMutationCluster -SetMissingClusterStatus # REQUIRED $query.Var.input = @{ # OPTIONAL disconnectedState = $someMissingClusterDisconnectedState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MissingClusterDisconnectedState]) for enum values. # OPTIONAL exclusionReason = $someString # REQUIRED uuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SetMissingClusterStatusReply </code> </example> <example> Runs the UpdateClusterDefaultAddress operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: UpdateClusterDefaultAddress $query = New-RscMutationCluster -UpdateClusterDefaultAddress # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # OPTIONAL address = $someString # OPTIONAL port = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateClusterDefaultAddressReply </code> </example> <example> Runs the UpdateClusterLocation operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: UpdateClusterLocation $query = New-RscMutationCluster -UpdateClusterLocation # REQUIRED $query.Var.clusterUuid = $someString # REQUIRED $query.Var.clusterLocation = @{ # REQUIRED address = $someString # REQUIRED latitude = $someSingle # REQUIRED longitude = $someSingle } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Cluster </code> </example> <example> Runs the UpdateClusterNtpServers operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: UpdateClusterNtpServers $query = New-RscMutationCluster -UpdateClusterNtpServers # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED ntpServerConfigs = @( @{ # REQUIRED server = $someString # OPTIONAL symmetricKey = @{ # REQUIRED key = $someString # REQUIRED keyId = $someInt # REQUIRED keyType = $someString } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the UpdateClusterPauseStatus operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: UpdateClusterPauseStatus $query = New-RscMutationCluster -UpdateClusterPauseStatus # REQUIRED $query.Var.input = @{ # OPTIONAL clusterUuids = @( $someString ) # OPTIONAL togglePauseStatus = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateClusterPauseStatusReply </code> </example> <example> Runs the UpdateClusterSettings operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: UpdateClusterSettings $query = New-RscMutationCluster -UpdateClusterSettings # REQUIRED $query.Var.input = @{ # REQUIRED clusterUpdate = @{ # OPTIONAL acceptedEulaVersion = $someString # OPTIONAL geolocation = @{ # REQUIRED address = $someString } # OPTIONAL name = $someString # OPTIONAL timezone = @{ # REQUIRED timezone = $someClusterTimezoneType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTimezoneType]) for enum values. } } # REQUIRED id = $someString # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateClusterSettingsReply </code> </example> <example> Runs the UpdatePreviewerClusterConfig operation of the 'Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Cluster # API Operation: UpdatePreviewerClusterConfig $query = New-RscMutationCluster -UpdatePreviewerClusterConfig # REQUIRED $query.Var.previewerClusterConfig = @{ # OPTIONAL clusterId = $someString # OPTIONAL enabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Cluster </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationCrossAccount"> <summary> Create a new RscQuery object for any of the 4 operations in the 'Cross Account' API domain: AddCrossAccountServiceConsumer, CreateCrossAccountPair, CreateCrossAccountRegOauthPayload, or DeleteCrossAccountPair. </summary> <description> 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. </description> <example> Runs the AddCrossAccountServiceConsumer operation of the 'Cross Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CrossAccount # API Operation: AddCrossAccountServiceConsumer $query = New-RscMutationCrossAccount -AddCrossAccountServiceConsumer # REQUIRED $query.Var.input = @{ # REQUIRED crossAccountId = $someString # REQUIRED fqdn = $someString # REQUIRED serviceConsumerSa = @{ # OPTIONAL clientId = $someString # OPTIONAL clientSecret = $someString # OPTIONAL accessTokenUrl = $someString } # OPTIONAL isRefresh = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddCrossAccountServiceConsumerReply </code> </example> <example> Runs the CreateCrossAccountPair operation of the 'Cross Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CrossAccount # API Operation: CreateCrossAccountPair $query = New-RscMutationCrossAccount -CreateCrossAccountPair # REQUIRED $query.Var.input = @{ # REQUIRED code = $someString # REQUIRED state = $someString # REQUIRED fqdn = $someString # OPTIONAL isRefresh = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the CreateCrossAccountRegOauthPayload operation of the 'Cross Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CrossAccount # API Operation: CreateCrossAccountRegOauthPayload $query = New-RscMutationCrossAccount -CreateCrossAccountRegOauthPayload # REQUIRED $query.Var.input = @{ # REQUIRED fqdn = $someString # OPTIONAL isRefresh = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateCrossAccountRegOauthPayloadReply </code> </example> <example> Runs the DeleteCrossAccountPair operation of the 'Cross Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: CrossAccount # API Operation: DeleteCrossAccountPair $query = New-RscMutationCrossAccount -DeleteCrossAccountPair # REQUIRED $query.Var.input = @{ # REQUIRED crossAccountId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationDb2"> <summary> 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. </summary> <description> 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. </description> <example> Runs the AddInstance operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: AddInstance $query = New-RscMutationDb2 -AddInstance # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED db2InstanceRequestConfig = @{ # REQUIRED hostIds = @( $someString ) # REQUIRED instanceName = $someString # REQUIRED password = $someString # REQUIRED username = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddDb2InstanceReply </code> </example> <example> Runs the ConfigureRestore operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: ConfigureRestore $query = New-RscMutationDb2 -ConfigureRestore # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED restoreConfig = @{ # OPTIONAL expiryTimestamp = $someDateTime # REQUIRED hostIdsToAdd = @( $someString ) # REQUIRED hostIdsToRemove = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Db2ConfigureRestoreResponse </code> </example> <example> Runs the CreateOnDemandBackup operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: CreateOnDemandBackup $query = New-RscMutationDb2 -CreateOnDemandBackup # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteDatabase operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: DeleteDatabase $query = New-RscMutationDb2 -DeleteDatabase # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteInstance operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: DeleteInstance $query = New-RscMutationDb2 -DeleteInstance # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DiscoverInstance operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: DiscoverInstance $query = New-RscMutationDb2 -DiscoverInstance # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadSnapshot operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: DownloadSnapshot $query = New-RscMutationDb2 -DownloadSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadSnapshotV2 operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: DownloadSnapshotV2 $query = New-RscMutationDb2 -DownloadSnapshotV2 # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadSnapshotsForPointInTimeRecovery operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: DownloadSnapshotsForPointInTimeRecovery $query = New-RscMutationDb2 -DownloadSnapshotsForPointInTimeRecovery # REQUIRED $query.Var.input = @{ # REQUIRED downloadConfig = @{ # OPTIONAL pointInTime = $someDateTime # REQUIRED preferredLocationId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExpireDownloadedSnapshots operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: ExpireDownloadedSnapshots $query = New-RscMutationDb2 -ExpireDownloadedSnapshots # REQUIRED $query.Var.input = @{ # OPTIONAL afterTime = $someDateTime # OPTIONAL beforeTime = $someDateTime # OPTIONAL shouldExpireLogsOnly = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the PatchDatabase operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: PatchDatabase $query = New-RscMutationDb2 -PatchDatabase # REQUIRED $query.Var.input = @{ # REQUIRED db2DatabaseConfig = @{ # OPTIONAL backupParallelism = $someInt # OPTIONAL backupSessions = $someInt } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PatchDb2DatabaseReply </code> </example> <example> Runs the PatchInstance operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: PatchInstance $query = New-RscMutationDb2 -PatchInstance # REQUIRED $query.Var.input = @{ # REQUIRED db2InstanceRequestConfig = @{ # OPTIONAL hostIds = @( $someString ) # OPTIONAL password = $someString # OPTIONAL username = $someString # OPTIONAL instanceName = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PatchDb2InstanceReply </code> </example> <example> Runs the RefreshDatabase operation of the 'Db2' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Db2 # API Operation: RefreshDatabase $query = New-RscMutationDb2 -RefreshDatabase # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationDownload"> <summary> Create a new RscQuery object for any of the 19 operations in the 'Report Download' API domain: ActiveDirectorySnapshotFromLocation, AuditLogCsvAsync, ExchangeSnapshot, ExchangeSnapshotV2, FilesetSnapshot, FilesetSnapshotFromLocation, FromArchiveV2, ObjectFilesCsv, ObjectsListCsv, ReportCsvAsync, ReportPdfAsync, ResultsCsv, SapHanaSnapshot, SapHanaSnapshotFromLocation, SapHanaSnapshotsForPointInTimeRecovery, SnapshotResultsCsv, ThreatHuntCsv, VolumeGroupSnapshotFiles, or VolumeGroupSnapshotFromLocation. </summary> <description> New-RscMutationDownload creates a new mutation object for operations in the 'Report Download' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 19 operations in the 'Report Download' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: ActiveDirectorySnapshotFromLocation, AuditLogCsvAsync, ExchangeSnapshot, ExchangeSnapshotV2, FilesetSnapshot, FilesetSnapshotFromLocation, FromArchiveV2, ObjectFilesCsv, ObjectsListCsv, ReportCsvAsync, ReportPdfAsync, ResultsCsv, SapHanaSnapshot, SapHanaSnapshotFromLocation, SapHanaSnapshotsForPointInTimeRecovery, SnapshotResultsCsv, ThreatHuntCsv, VolumeGroupSnapshotFiles, or VolumeGroupSnapshotFromLocation. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationDownload -ActiveDirectorySnapshotFromLocation).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationDownload -ActiveDirectorySnapshotFromLocation).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the ActiveDirectorySnapshotFromLocation operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ActiveDirectorySnapshotFromLocation $query = New-RscMutationDownload -ActiveDirectorySnapshotFromLocation # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the AuditLogCsvAsync operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: AuditLogCsvAsync $query = New-RscMutationDownload -AuditLogCsvAsync # REQUIRED $query.Var.input = @{ # REQUIRED filters = @{ # OPTIONAL activityObjectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL objectType = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL excludedObjectTypes = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL lastActivityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL lastActivityType = @( $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values. ) # OPTIONAL slaDomainId = @( $someString ) # OPTIONAL clusterType = @( $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values. ) # OPTIONAL clusterId = @( $someString ) # OPTIONAL timeRange = @{ # OPTIONAL relativeTimeRange = @{ # REQUIRED magnitude = $someInt # REQUIRED unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values. } # OPTIONAL absoluteTimeRange = @{ # REQUIRED start = $someDateTime # REQUIRED end = $someDateTime } } # OPTIONAL slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values. # OPTIONAL orgId = @( $someString ) # OPTIONAL managedId = @( $someString ) # OPTIONAL isAnomaly = $someBoolean # OPTIONAL searchTerm = $someString # OPTIONAL complianceStatus = @( $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values. ) # OPTIONAL protectionStatus = @( $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values. ) # OPTIONAL failoverStatus = @( $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values. ) # OPTIONAL failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values. # OPTIONAL source = @( $someString ) # OPTIONAL targetSite = @( $someString ) # OPTIONAL userAuditObjectType = @( $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values. ) # OPTIONAL userAuditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL userAuditStatus = @( $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values. ) # OPTIONAL replicationSource = @( $someString ) # OPTIONAL clusterLocation = @( $someString ) # OPTIONAL taskCategory = @( $someString ) # OPTIONAL taskStatus = @( $someString ) # OPTIONAL taskType = @( $someString ) # OPTIONAL policyId = @( $someString ) # OPTIONAL sonarObjectTypes = @( $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values. ) # OPTIONAL shouldApplyWhitelists = $someBoolean # OPTIONAL date = $someDateTime } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncDownloadReply </code> </example> <example> Runs the ExchangeSnapshot operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ExchangeSnapshot $query = New-RscMutationDownload -ExchangeSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExchangeSnapshotV2 operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ExchangeSnapshotV2 $query = New-RscMutationDownload -ExchangeSnapshotV2 # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the FilesetSnapshot operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: FilesetSnapshot $query = New-RscMutationDownload -FilesetSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the FilesetSnapshotFromLocation operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: FilesetSnapshotFromLocation $query = New-RscMutationDownload -FilesetSnapshotFromLocation # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the FromArchiveV2 operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: FromArchiveV2 $query = New-RscMutationDownload -FromArchiveV2 # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL slaId = $someString # REQUIRED recoveryPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } } # REQUIRED id = $someString # REQUIRED locationId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ObjectFilesCsv operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ObjectFilesCsv $query = New-RscMutationDownload -ObjectFilesCsv # REQUIRED $query.Var.input = @{ # REQUIRED filters = @{ # OPTIONAL openAccessTypes = @( $someOpenAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.OpenAccessType]) for enum values. ) # OPTIONAL stalenessTypes = @( $someStalenessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StalenessType]) for enum values. ) # OPTIONAL analyzerGroupIds = @( $someString ) # OPTIONAL clusterIds = @( $someString ) # OPTIONAL pathPrefix = $someString # OPTIONAL snappableTypes = @( $someString ) # OPTIONAL searchText = $someString # OPTIONAL whitelistEnabled = $someBoolean # OPTIONAL fileCountTypes = @( $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values. ) # OPTIONAL accessTypes = @( $someAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AccessType]) for enum values. ) # OPTIONAL activityTypes = @( $someActivityAccessType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityAccessType]) for enum values. ) # OPTIONAL objectIds = @( $someString ) # OPTIONAL inodeTypes = @( $someInodeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InodeType]) for enum values. ) # REQUIRED objectTypes = @( $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values. ) } # REQUIRED day = $someString # REQUIRED timezone = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadCsvReply </code> </example> <example> Runs the ObjectsListCsv operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ObjectsListCsv $query = New-RscMutationDownload -ObjectsListCsv # REQUIRED $query.Var.input = @{ # REQUIRED day = $someString # REQUIRED timezone = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadCsvReply </code> </example> <example> Runs the ReportCsvAsync operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ReportCsvAsync $query = New-RscMutationDownload -ReportCsvAsync # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt # OPTIONAL config = @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL charts = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) } ) # OPTIONAL tables = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) # REQUIRED selectedColumns = @( $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values. ) # OPTIONAL sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values. # OPTIONAL sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values. } ) # REQUIRED filters = @{ # OPTIONAL activityObjectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL objectType = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL excludedObjectTypes = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL lastActivityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL lastActivityType = @( $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values. ) # OPTIONAL slaDomainId = @( $someString ) # OPTIONAL clusterType = @( $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values. ) # OPTIONAL clusterId = @( $someString ) # OPTIONAL timeRange = @{ # OPTIONAL relativeTimeRange = @{ # REQUIRED magnitude = $someInt # REQUIRED unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values. } # OPTIONAL absoluteTimeRange = @{ # REQUIRED start = $someDateTime # REQUIRED end = $someDateTime } } # OPTIONAL slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values. # OPTIONAL orgId = @( $someString ) # OPTIONAL managedId = @( $someString ) # OPTIONAL isAnomaly = $someBoolean # OPTIONAL searchTerm = $someString # OPTIONAL complianceStatus = @( $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values. ) # OPTIONAL protectionStatus = @( $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values. ) # OPTIONAL failoverStatus = @( $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values. ) # OPTIONAL failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values. # OPTIONAL source = @( $someString ) # OPTIONAL targetSite = @( $someString ) # OPTIONAL userAuditObjectType = @( $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values. ) # OPTIONAL userAuditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL userAuditStatus = @( $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values. ) # OPTIONAL replicationSource = @( $someString ) # OPTIONAL clusterLocation = @( $someString ) # OPTIONAL taskCategory = @( $someString ) # OPTIONAL taskStatus = @( $someString ) # OPTIONAL taskType = @( $someString ) # OPTIONAL policyId = @( $someString ) # OPTIONAL sonarObjectTypes = @( $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values. ) # OPTIONAL shouldApplyWhitelists = $someBoolean # OPTIONAL date = $someDateTime } # OPTIONAL isHidden = $someBoolean # OPTIONAL isReadOnly = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncDownloadReply </code> </example> <example> Runs the ReportPdfAsync operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ReportPdfAsync $query = New-RscMutationDownload -ReportPdfAsync # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt # OPTIONAL config = @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL charts = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) } ) # OPTIONAL tables = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) # REQUIRED selectedColumns = @( $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values. ) # OPTIONAL sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values. # OPTIONAL sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values. } ) # REQUIRED filters = @{ # OPTIONAL activityObjectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL objectType = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL excludedObjectTypes = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL lastActivityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL lastActivityType = @( $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values. ) # OPTIONAL slaDomainId = @( $someString ) # OPTIONAL clusterType = @( $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values. ) # OPTIONAL clusterId = @( $someString ) # OPTIONAL timeRange = @{ # OPTIONAL relativeTimeRange = @{ # REQUIRED magnitude = $someInt # REQUIRED unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values. } # OPTIONAL absoluteTimeRange = @{ # REQUIRED start = $someDateTime # REQUIRED end = $someDateTime } } # OPTIONAL slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values. # OPTIONAL orgId = @( $someString ) # OPTIONAL managedId = @( $someString ) # OPTIONAL isAnomaly = $someBoolean # OPTIONAL searchTerm = $someString # OPTIONAL complianceStatus = @( $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values. ) # OPTIONAL protectionStatus = @( $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values. ) # OPTIONAL failoverStatus = @( $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values. ) # OPTIONAL failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values. # OPTIONAL source = @( $someString ) # OPTIONAL targetSite = @( $someString ) # OPTIONAL userAuditObjectType = @( $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values. ) # OPTIONAL userAuditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL userAuditStatus = @( $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values. ) # OPTIONAL replicationSource = @( $someString ) # OPTIONAL clusterLocation = @( $someString ) # OPTIONAL taskCategory = @( $someString ) # OPTIONAL taskStatus = @( $someString ) # OPTIONAL taskType = @( $someString ) # OPTIONAL policyId = @( $someString ) # OPTIONAL sonarObjectTypes = @( $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values. ) # OPTIONAL shouldApplyWhitelists = $someBoolean # OPTIONAL date = $someDateTime } # OPTIONAL isHidden = $someBoolean # OPTIONAL isReadOnly = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncDownloadReply </code> </example> <example> Runs the ResultsCsv operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ResultsCsv $query = New-RscMutationDownload -ResultsCsv # REQUIRED $query.Var.crawlId = $someString # OPTIONAL $query.Var.downloadFilter = @{ # OPTIONAL analyzerGroupIds = @( $someString ) # OPTIONAL browseDirectorySnappablePath = @{ # OPTIONAL snappableFid = $someString # OPTIONAL stdPath = $someString } # OPTIONAL listFileResultsSnappablePaths = @( @{ # OPTIONAL snappableFid = $someString # OPTIONAL stdPath = $someString } ) # OPTIONAL listFileResultsSnappableTypes = @( $someString ) # OPTIONAL listFileResultsSearchText = $someString # OPTIONAL whitelistEnabled = $someBoolean # REQUIRED fileType = $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadResultsCsvReply </code> </example> <example> Runs the SapHanaSnapshot operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: SapHanaSnapshot $query = New-RscMutationDownload -SapHanaSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the SapHanaSnapshotFromLocation operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: SapHanaSnapshotFromLocation $query = New-RscMutationDownload -SapHanaSnapshotFromLocation # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the SapHanaSnapshotsForPointInTimeRecovery operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: SapHanaSnapshotsForPointInTimeRecovery $query = New-RscMutationDownload -SapHanaSnapshotsForPointInTimeRecovery # REQUIRED $query.Var.input = @{ # REQUIRED downloadConfig = @{ # OPTIONAL pointInTime = $someDateTime # REQUIRED preferredLocationId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the SnapshotResultsCsv operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: SnapshotResultsCsv $query = New-RscMutationDownload -SnapshotResultsCsv # REQUIRED $query.Var.snappableFid = $someString # REQUIRED $query.Var.snapshotFid = $someString # OPTIONAL $query.Var.downloadFilter = @{ # OPTIONAL analyzerGroupIds = @( $someString ) # OPTIONAL browseDirectorySnappablePath = @{ # OPTIONAL snappableFid = $someString # OPTIONAL stdPath = $someString } # OPTIONAL listFileResultsSnappablePaths = @( @{ # OPTIONAL snappableFid = $someString # OPTIONAL stdPath = $someString } ) # OPTIONAL listFileResultsSnappableTypes = @( $someString ) # OPTIONAL listFileResultsSearchText = $someString # OPTIONAL whitelistEnabled = $someBoolean # REQUIRED fileType = $someFileCountType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FileCountType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadCsvReply </code> </example> <example> Runs the ThreatHuntCsv operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: ThreatHuntCsv $query = New-RscMutationDownload -ThreatHuntCsv # REQUIRED $query.Var.input = @{ # REQUIRED huntId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadThreatHuntCsvReply </code> </example> <example> Runs the VolumeGroupSnapshotFiles operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: VolumeGroupSnapshotFiles $query = New-RscMutationDownload -VolumeGroupSnapshotFiles # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL nextSnapshotFid = $someString # REQUIRED config = @{ # OPTIONAL legalHoldDownloadConfig = @{ # REQUIRED isLegalHoldDownload = $someBoolean } # REQUIRED paths = @( $someString ) } # OPTIONAL deltaTypeFilter = @( $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the VolumeGroupSnapshotFromLocation operation of the 'Report Download' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Download # API Operation: VolumeGroupSnapshotFromLocation $query = New-RscMutationDownload -VolumeGroupSnapshotFromLocation # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationExchange"> <summary> Create a new RscQuery object for any of the 4 operations in the 'Microsoft Exchange' API domain: BulkUpdateDag, CreateMount, CreateOnDemandBackup, or DeleteSnapshotMount. </summary> <description> 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. </description> <example> Runs the BulkUpdateDag operation of the 'Microsoft Exchange' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Exchange # API Operation: BulkUpdateDag $query = New-RscMutationExchange -BulkUpdateDag # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED dagUpdateProperties = @( @{ # REQUIRED id = $someString # REQUIRED updateProperties = @{ # REQUIRED backupPreference = $someExchangeBackupPreference # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeBackupPreference]) for enum values. } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: V1BulkUpdateExchangeDagResponse </code> </example> <example> Runs the CreateMount operation of the 'Microsoft Exchange' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Exchange # API Operation: CreateMount $query = New-RscMutationExchange -CreateMount # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # OPTIONAL smbDomainName = $someString # OPTIONAL smbValidIps = @( $someString ) # OPTIONAL smbValidUsers = @( $someString ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateOnDemandBackup operation of the 'Microsoft Exchange' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Exchange # API Operation: CreateOnDemandBackup $query = New-RscMutationExchange -CreateOnDemandBackup # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL forceFullSnapshot = $someBoolean # OPTIONAL baseOnDemandSnapshotConfig = @{ # OPTIONAL slaId = $someString } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteSnapshotMount operation of the 'Microsoft Exchange' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Exchange # API Operation: DeleteSnapshotMount $query = New-RscMutationExchange -DeleteSnapshotMount # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationFailoverCluster"> <summary> 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. </summary> <description> 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. </description> <example> Runs the BulkDelete operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: BulkDelete $query = New-RscMutationFailoverCluster -BulkDelete # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED ids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the BulkDeleteApp operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: BulkDeleteApp $query = New-RscMutationFailoverCluster -BulkDeleteApp # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED ids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the Create operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: Create $query = New-RscMutationFailoverCluster -Create # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # OPTIONAL configuredSlaDomainId = $someString # REQUIRED hostIds = @( $someString ) # REQUIRED name = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateFailoverClusterReply </code> </example> <example> Runs the CreateApp operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: CreateApp $query = New-RscMutationFailoverCluster -CreateApp # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL configuredSlaDomainId = $someString # REQUIRED failoverClusterType = $someFailoverClusterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverClusterType]) for enum values. # REQUIRED failoverClusterAppSource = @{ # OPTIONAL virtualIps = @( $someString ) # OPTIONAL vips = @( $someString ) # OPTIONAL nodeOrders = @( @{ # OPTIONAL nodeName = $someString # REQUIRED nodeId = $someString # REQUIRED order = $someInt } ) } # REQUIRED failoverClusterId = $someString # REQUIRED name = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateFailoverClusterAppReply </code> </example> <example> Runs the Delete operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: Delete $query = New-RscMutationFailoverCluster -Delete # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the DeleteApp operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: DeleteApp $query = New-RscMutationFailoverCluster -DeleteApp # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the Update operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: Update $query = New-RscMutationFailoverCluster -Update # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED updateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # REQUIRED hostIds = @( $someString ) # REQUIRED name = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateFailoverClusterReply </code> </example> <example> Runs the UpdateApp operation of the 'Failover Cluster' API domain. <code> PS > # Create an RscQuery object for: # API Domain: FailoverCluster # API Operation: UpdateApp $query = New-RscMutationFailoverCluster -UpdateApp # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED updateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # REQUIRED failoverClusterType = $someFailoverClusterType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverClusterType]) for enum values. # REQUIRED failoverClusterAppSource = @{ # OPTIONAL virtualIps = @( $someString ) # OPTIONAL vips = @( $someString ) # OPTIONAL nodeOrders = @( @{ # OPTIONAL nodeName = $someString # REQUIRED nodeId = $someString # REQUIRED order = $someInt } ) } # REQUIRED failoverClusterId = $someString # REQUIRED name = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateFailoverClusterAppReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationFileset"> <summary> Create a new RscQuery object for any of the 6 operations in the 'Fileset' API domain: BulkCreate, BulkCreateTemplates, BulkDelete, BulkDeleteTemplate, BulkUpdateTemplate, or RecoverFiles. </summary> <description> New-RscMutationFileset creates a new mutation object for operations in the 'Fileset' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 6 operations in the 'Fileset' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BulkCreate, BulkCreateTemplates, BulkDelete, BulkDeleteTemplate, BulkUpdateTemplate, or RecoverFiles. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationFileset -BulkCreate).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationFileset -BulkCreate).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the BulkCreate operation of the 'Fileset' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Fileset # API Operation: BulkCreate $query = New-RscMutationFileset -BulkCreate # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED definitions = @( @{ # OPTIONAL hostId = $someString # OPTIONAL isPassthrough = $someBoolean # OPTIONAL shareId = $someString # OPTIONAL enableHardlinkSupport = $someBoolean # OPTIONAL enableSymlinkResolution = $someBoolean # OPTIONAL failoverClusterAppId = $someString # OPTIONAL snapMirrorLabelForFullBackup = $someString # OPTIONAL snapMirrorLabelForIncrementalBackup = $someString # OPTIONAL isManagedByPolaris = $someBoolean # OPTIONAL isPolarisNasModel = $someBoolean # OPTIONAL arraySpec = @{ # OPTIONAL proxyHostId = $someString } # REQUIRED templateId = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkCreateFilesetsReply </code> </example> <example> Runs the BulkCreateTemplates operation of the 'Fileset' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Fileset # API Operation: BulkCreateTemplates $query = New-RscMutationFileset -BulkCreateTemplates # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED definitions = @( @{ # OPTIONAL backupScriptErrorHandling = $someString # OPTIONAL backupScriptTimeout = $someInt64 # OPTIONAL exceptions = @( $someString ) # OPTIONAL excludes = @( $someString ) # OPTIONAL isArrayEnabled = $someBoolean # OPTIONAL postBackupScript = $someString # OPTIONAL preBackupScript = $someString # OPTIONAL isCreatedByKupr = $someBoolean # OPTIONAL isCreatedByPolarisNas = $someBoolean # OPTIONAL operatingSystemType = $someFilesetTemplateCreateOperatingSystemType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateOperatingSystemType]) for enum values. # OPTIONAL shareType = $someFilesetTemplateCreateShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateShareType]) for enum values. # OPTIONAL filesetOptions = @{ # OPTIONAL allowBackupHiddenFoldersInNetworkMounts = $someBoolean # OPTIONAL allowBackupNetworkMounts = $someBoolean # OPTIONAL useWindowsVss = $someBoolean } # REQUIRED includes = @( $someString ) # REQUIRED name = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkCreateFilesetTemplatesReply </code> </example> <example> Runs the BulkDelete operation of the 'Fileset' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Fileset # API Operation: BulkDelete $query = New-RscMutationFileset -BulkDelete # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED ids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the BulkDeleteTemplate operation of the 'Fileset' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Fileset # API Operation: BulkDeleteTemplate $query = New-RscMutationFileset -BulkDeleteTemplate # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED ids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the BulkUpdateTemplate operation of the 'Fileset' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Fileset # API Operation: BulkUpdateTemplate $query = New-RscMutationFileset -BulkUpdateTemplate # REQUIRED $query.Var.input = @{ # REQUIRED definitions = @( @{ # OPTIONAL backupScriptErrorHandling = $someString # OPTIONAL backupScriptTimeout = $someInt64 # OPTIONAL exceptions = @( $someString ) # OPTIONAL excludes = @( $someString ) # OPTIONAL includes = @( $someString ) # OPTIONAL name = $someString # OPTIONAL postBackupScript = $someString # OPTIONAL preBackupScript = $someString # OPTIONAL isCreatedByKupr = $someBoolean # OPTIONAL isCreatedByPolarisNas = $someBoolean # OPTIONAL operatingSystemType = $someFilesetTemplatePatchOperatingSystemType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplatePatchOperatingSystemType]) for enum values. # OPTIONAL shareType = $someFilesetTemplatePatchShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplatePatchShareType]) for enum values. # OPTIONAL filesetOptions = @{ # OPTIONAL allowBackupHiddenFoldersInNetworkMounts = $someBoolean # OPTIONAL allowBackupNetworkMounts = $someBoolean # OPTIONAL useWindowsVss = $someBoolean } # REQUIRED id = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateFilesetTemplateReply </code> </example> <example> Runs the RecoverFiles operation of the 'Fileset' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Fileset # API Operation: RecoverFiles $query = New-RscMutationFileset -RecoverFiles # REQUIRED $query.Var.input = @{ # REQUIRED snapshotFid = $someString # OPTIONAL nextSnapshotFid = $someString # REQUIRED restorePathPairList = @( @{ # OPTIONAL path = $someString # OPTIONAL restorePath = $someString } ) # OPTIONAL deltaTypeFilter = @( $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values. ) # REQUIRED config = @{ # OPTIONAL ignoreErrors = $someBoolean # OPTIONAL excludePaths = @( $someString ) # OPTIONAL shouldRecreateDirectoryStructure = $someBoolean # REQUIRED restoreConfig = @( @{ # OPTIONAL restorePathPair = @{ # OPTIONAL restorePath = $someString # REQUIRED path = $someString } } ) } # REQUIRED shareType = $someShareTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ShareTypeEnum]) for enum values. # REQUIRED osType = $someGuestOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GuestOsType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationGcp"> <summary> 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. </summary> <description> 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. </description> <example> Runs the CloudAccountAddManualAuthProject operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CloudAccountAddManualAuthProject $query = New-RscMutationGcp -CloudAccountAddManualAuthProject # REQUIRED $query.Var.input = @{ # REQUIRED gcpNativeProjectId = $someString # REQUIRED gcpProjectName = $someString # REQUIRED gcpProjectNumber = $someInt64 # OPTIONAL organizationName = $someString # OPTIONAL serviceAccountJwtConfig = $someString # REQUIRED features = @( $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the CloudAccountAddProjects operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CloudAccountAddProjects $query = New-RscMutationGcp -CloudAccountAddProjects # REQUIRED $query.Var.input = @{ # REQUIRED sessionId = $someString # REQUIRED nativeProtectionProjectIds = @( $someString ) # REQUIRED sharedVpcHostProjectIds = @( $someString ) # REQUIRED cloudAccountsProjectIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GcpCloudAccountAddProjectsReply </code> </example> <example> Runs the CloudAccountDeleteProjects operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CloudAccountDeleteProjects $query = New-RscMutationGcp -CloudAccountDeleteProjects # REQUIRED $query.Var.input = @{ # OPTIONAL sessionId = $someString # REQUIRED nativeProtectionProjectIds = @( $someString ) # REQUIRED sharedVpcHostProjectIds = @( $someString ) # REQUIRED cloudAccountsProjectIds = @( $someString ) # REQUIRED skipResourceDeletion = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GcpCloudAccountDeleteProjectsReply </code> </example> <example> Runs the CloudAccountOauthComplete operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CloudAccountOauthComplete $query = New-RscMutationGcp -CloudAccountOauthComplete # REQUIRED $query.Var.input = @{ # REQUIRED sessionId = $someString # REQUIRED authorizationCode = $someString # REQUIRED redirectUrl = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GcpCloudAccountOauthCompleteReply </code> </example> <example> Runs the CloudAccountOauthInitiate operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CloudAccountOauthInitiate $query = New-RscMutationGcp -CloudAccountOauthInitiate # REQUIRED $query.Var.input = @{ # REQUIRED customerUrl = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GcpCloudAccountOauthInitiateReply </code> </example> <example> Runs the CloudAccountUpgradeProjects operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CloudAccountUpgradeProjects $query = New-RscMutationGcp -CloudAccountUpgradeProjects # REQUIRED $query.Var.input = @{ # REQUIRED sessionId = $someString # REQUIRED projectIds = @( $someString ) # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GcpCloudAccountUpgradeProjectsReply </code> </example> <example> Runs the CreateReaderTarget operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CreateReaderTarget $query = New-RscMutationGcp -CreateReaderTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED name = $someString # REQUIRED region = $someGcpRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpRegion]) for enum values. # REQUIRED storageClass = $someGcpStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpStorageClass]) for enum values. # REQUIRED bucket = $someString # REQUIRED encryptionPassword = $someString # REQUIRED serviceAccountJsonKey = $someString # OPTIONAL archivalProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # REQUIRED readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values. # REQUIRED bypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the CreateTarget operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: CreateTarget $query = New-RscMutationGcp -CreateTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED name = $someString # REQUIRED region = $someGcpRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpRegion]) for enum values. # REQUIRED storageClass = $someGcpStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpStorageClass]) for enum values. # REQUIRED bucket = $someString # REQUIRED encryptionPassword = $someString # REQUIRED serviceAccountJsonKey = $someString # OPTIONAL archivalProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # REQUIRED bypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the SetDefaultServiceAccountJwtConfig operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: SetDefaultServiceAccountJwtConfig $query = New-RscMutationGcp -SetDefaultServiceAccountJwtConfig # REQUIRED $query.Var.input = @{ # REQUIRED serviceAccountName = $someString # REQUIRED serviceAccountJwtConfig = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the UpdateTarget operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: UpdateTarget $query = New-RscMutationGcp -UpdateTarget # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL region = $someGcpRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpRegion]) for enum values. # OPTIONAL storageClass = $someGcpStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GcpStorageClass]) for enum values. # OPTIONAL bucket = $someString # OPTIONAL encryptionPassword = $someString # OPTIONAL serviceAccountJsonKey = $someString # OPTIONAL archivalProxySettings = @{ # OPTIONAL proxyServer = $someString # OPTIONAL portNumber = $someInt # OPTIONAL username = $someString # OPTIONAL password = $someString # OPTIONAL protocol = $someString } # OPTIONAL bypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the UpgradeCloudAccountPermissionsWithoutOauth operation of the 'Google Cloud Platform' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Gcp # API Operation: UpgradeCloudAccountPermissionsWithoutOauth $query = New-RscMutationGcp -UpgradeCloudAccountPermissionsWithoutOauth # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED feature = $someCloudAccountFeature # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudAccountFeature]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpgradeGcpCloudAccountPermissionsWithoutOauthReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationGcpNative"> <summary> 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. </summary> <description> 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. </description> <example> Runs the DisableProject operation of the 'Google Cloud Platform Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: GcpNative # API Operation: DisableProject $query = New-RscMutationGcpNative -DisableProject # REQUIRED $query.Var.input = @{ # REQUIRED projectId = $someString # REQUIRED shouldDeleteNativeSnapshots = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the ExcludeDisksFromInstanceSnapshot operation of the 'Google Cloud Platform Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: GcpNative # API Operation: ExcludeDisksFromInstanceSnapshot $query = New-RscMutationGcpNative -ExcludeDisksFromInstanceSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED instanceId = $someString # REQUIRED diskIdToIsExcluded = @( @{ # REQUIRED diskId = $someString # REQUIRED isExcluded = $someBoolean } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ExportDisk operation of the 'Google Cloud Platform Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: GcpNative # API Operation: ExportDisk $query = New-RscMutationGcpNative -ExportDisk # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED targetRegion = $someString # OPTIONAL targetZone = $someString # REQUIRED targetDiskName = $someString # REQUIRED targetDiskType = $someString # REQUIRED targetDiskSizeGb = $someInt # REQUIRED replaceAttached = $someBoolean # OPTIONAL replicaZones = @( $someString ) # REQUIRED shouldCopyLabels = $someBoolean # REQUIRED shouldAddRubrikLabels = $someBoolean # REQUIRED diskEncryptionType = $someDiskEncryptionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiskEncryptionType]) for enum values. # OPTIONAL kmsCryptoKey = @{ # OPTIONAL projectNativeId = $someString # OPTIONAL location = $someString # OPTIONAL keyRing = $someString # OPTIONAL key = $someString } # OPTIONAL kmsCryptoKeyResourceId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the ExportGceInstance operation of the 'Google Cloud Platform Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: GcpNative # API Operation: ExportGceInstance $query = New-RscMutationGcpNative -ExportGceInstance # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED targetZone = $someString # REQUIRED targetInstanceName = $someString # REQUIRED targetMachineType = $someString # REQUIRED targetSubnetName = $someString # OPTIONAL targetNetworkTags = @( $someString ) # REQUIRED shouldPowerOff = $someBoolean # REQUIRED shouldCopyLabels = $someBoolean # REQUIRED shouldAddRubrikLabels = $someBoolean # OPTIONAL sharedVpcHostProjectNativeId = $someString # REQUIRED diskEncryptionType = $someDiskEncryptionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DiskEncryptionType]) for enum values. # OPTIONAL kmsCryptoKey = @{ # OPTIONAL projectNativeId = $someString # OPTIONAL location = $someString # OPTIONAL keyRing = $someString # OPTIONAL key = $someString } # OPTIONAL kmsCryptoKeyResourceId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the RefreshProjects operation of the 'Google Cloud Platform Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: GcpNative # API Operation: RefreshProjects $query = New-RscMutationGcpNative -RefreshProjects # REQUIRED $query.Var.input = @{ # REQUIRED projectIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the RestoreGceInstance operation of the 'Google Cloud Platform Native' API domain. <code> PS > # Create an RscQuery object for: # API Domain: GcpNative # API Operation: RestoreGceInstance $query = New-RscMutationGcpNative -RestoreGceInstance # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED shouldAddRubrikLabels = $someBoolean # REQUIRED shouldRestoreLabels = $someBoolean # REQUIRED shouldStartRestoredInstance = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationHost"> <summary> Create a new RscQuery object for any of the 7 operations in the 'Host' API domain: BulkDelete, BulkRefresh, BulkRegister, BulkRegisterAsync, BulkUpdate, ChangeVfd, or Refresh. </summary> <description> 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. </description> <example> Runs the BulkDelete operation of the 'Host' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Host # API Operation: BulkDelete $query = New-RscMutationHost -BulkDelete # REQUIRED $query.Var.input = @{ # REQUIRED ids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the BulkRefresh operation of the 'Host' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Host # API Operation: BulkRefresh $query = New-RscMutationHost -BulkRefresh # REQUIRED $query.Var.input = @{ # REQUIRED ids = @( $someString ) # REQUIRED shouldRunAsynchronously = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkRefreshHostsReply </code> </example> <example> Runs the BulkRegister operation of the 'Host' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Host # API Operation: BulkRegister $query = New-RscMutationHost -BulkRegister # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED hosts = @( @{ # OPTIONAL hasAgent = $someBoolean # OPTIONAL oracleQueryUser = $someString # OPTIONAL oracleSysDbaUser = $someString # OPTIONAL organizationId = $someString # OPTIONAL alias = $someString # OPTIONAL isOracleHost = $someBoolean # OPTIONAL orgNetworkId = $someString # OPTIONAL osType = $someHostRegisterOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRegisterOsType]) for enum values. # OPTIONAL hdfsConfig = @{ # OPTIONAL hdfsBaseConfig = @{ # OPTIONAL apiToken = $someString # OPTIONAL kerberosTicket = $someString # OPTIONAL nameservices = $someString # OPTIONAL username = $someString # REQUIRED hosts = @( @{ # REQUIRED hostname = $someString # REQUIRED port = $someInt } ) } } # REQUIRED hostname = $someString # OPTIONAL mssqlSddUserCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } # OPTIONAL nasConfig = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL apiEndpoint = $someString # OPTIONAL apiHostname = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiToken = $someString # OPTIONAL apiUsername = $someString # OPTIONAL zoneName = $someString # OPTIONAL isSnapdiffEnabled = $someBoolean # OPTIONAL isIsilonChangelistEnabled = $someBoolean # OPTIONAL isNetAppSnapDiffEnabled = $someBoolean # OPTIONAL isShareAutoDiscoveryEnabled = $someBoolean # OPTIONAL isNutanixCftEnabled = $someBoolean # REQUIRED vendorType = $someString } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkRegisterHostReply </code> </example> <example> Runs the BulkRegisterAsync operation of the 'Host' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Host # API Operation: BulkRegisterAsync $query = New-RscMutationHost -BulkRegisterAsync # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED hosts = @( @{ # OPTIONAL hasAgent = $someBoolean # OPTIONAL oracleQueryUser = $someString # OPTIONAL oracleSysDbaUser = $someString # OPTIONAL organizationId = $someString # OPTIONAL alias = $someString # OPTIONAL isOracleHost = $someBoolean # OPTIONAL orgNetworkId = $someString # OPTIONAL osType = $someHostRegisterOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRegisterOsType]) for enum values. # OPTIONAL hdfsConfig = @{ # OPTIONAL hdfsBaseConfig = @{ # OPTIONAL apiToken = $someString # OPTIONAL kerberosTicket = $someString # OPTIONAL nameservices = $someString # OPTIONAL username = $someString # REQUIRED hosts = @( @{ # REQUIRED hostname = $someString # REQUIRED port = $someInt } ) } } # REQUIRED hostname = $someString # OPTIONAL mssqlSddUserCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } # OPTIONAL nasConfig = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL apiEndpoint = $someString # OPTIONAL apiHostname = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiToken = $someString # OPTIONAL apiUsername = $someString # OPTIONAL zoneName = $someString # OPTIONAL isSnapdiffEnabled = $someBoolean # OPTIONAL isIsilonChangelistEnabled = $someBoolean # OPTIONAL isNetAppSnapDiffEnabled = $someBoolean # OPTIONAL isShareAutoDiscoveryEnabled = $someBoolean # OPTIONAL isNutanixCftEnabled = $someBoolean # REQUIRED vendorType = $someString } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkRegisterHostAsyncReply </code> </example> <example> Runs the BulkUpdate operation of the 'Host' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Host # API Operation: BulkUpdate $query = New-RscMutationHost -BulkUpdate # REQUIRED $query.Var.input = @{ # REQUIRED hostUpdateProperties = @( @{ # REQUIRED hostId = $someString # REQUIRED updateProperties = @{ # OPTIONAL compressionEnabled = $someBoolean # OPTIONAL hostVfdDriverInstalled = $someBoolean # OPTIONAL hostname = $someString # OPTIONAL mssqlCbtDriverInstalled = $someBoolean # OPTIONAL oracleQueryUser = $someString # OPTIONAL oracleSysDbaUser = $someString # OPTIONAL alias = $someString # OPTIONAL isOracleHost = $someBoolean # OPTIONAL isUpdateCertAndAgentIdEnabled = $someBoolean # OPTIONAL isRefreshPaused = $someBoolean # OPTIONAL hostVfdEnabled = $someHostVfdInstallConfig # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostVfdInstallConfig]) for enum values. # OPTIONAL mssqlCbtEnabled = $someMssqlCbtStatusType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlCbtStatusType]) for enum values. # OPTIONAL hdfsConfig = @{ # OPTIONAL hdfsBaseConfig = @{ # OPTIONAL apiToken = $someString # OPTIONAL kerberosTicket = $someString # OPTIONAL nameservices = $someString # OPTIONAL username = $someString # REQUIRED hosts = @( @{ # REQUIRED hostname = $someString # REQUIRED port = $someInt } ) } } # OPTIONAL mssqlSddUserCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } # OPTIONAL nasConfig = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL apiEndpoint = $someString # OPTIONAL apiHostname = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiToken = $someString # OPTIONAL apiUsername = $someString # OPTIONAL zoneName = $someString # OPTIONAL isSnapdiffEnabled = $someBoolean # OPTIONAL isIsilonChangelistEnabled = $someBoolean # OPTIONAL isNetAppSnapDiffEnabled = $someBoolean # OPTIONAL isShareAutoDiscoveryEnabled = $someBoolean # OPTIONAL isNutanixCftEnabled = $someBoolean # REQUIRED vendorType = $someString } } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateHostReply </code> </example> <example> Runs the ChangeVfd operation of the 'Host' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Host # API Operation: ChangeVfd $query = New-RscMutationHost -ChangeVfd # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED hostIds = @( $someString ) # REQUIRED install = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ChangeVfdOnHostReply </code> </example> <example> Runs the Refresh operation of the 'Host' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Host # API Operation: Refresh $query = New-RscMutationHost -Refresh # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RefreshHostReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationHyperv"> <summary> 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. </summary> <description> 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. </description> <example> Runs the BatchExportVm operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: BatchExportVm $query = New-RscMutationHyperv -BatchExportVm # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # REQUIRED snapshots = @( @{ # OPTIONAL snapshotAfterDate = $someDateTime # OPTIONAL snapshotBeforeDate = $someDateTime # OPTIONAL snapshotId = $someString # OPTIONAL vmNamePrefix = $someString # REQUIRED exportConfig = @{ # OPTIONAL disableNetwork = $someBoolean # OPTIONAL hostId = $someString # OPTIONAL powerOn = $someBoolean # OPTIONAL removeNetworkDevices = $someBoolean # OPTIONAL vmName = $someString # REQUIRED path = $someString } # REQUIRED vmId = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchExportHypervVmReply </code> </example> <example> Runs the BatchInstantRecoverVm operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: BatchInstantRecoverVm $query = New-RscMutationHyperv -BatchInstantRecoverVm # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # REQUIRED snapshots = @( @{ # OPTIONAL snapshotAfterDate = $someDateTime # OPTIONAL snapshotBeforeDate = $someDateTime # OPTIONAL snapshotId = $someString # REQUIRED instantRecoveryConfig = @{ # OPTIONAL hostId = $someString # OPTIONAL vmName = $someString } # REQUIRED vmId = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchInstantRecoverHypervVmReply </code> </example> <example> Runs the BatchMountVm operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: BatchMountVm $query = New-RscMutationHyperv -BatchMountVm # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # REQUIRED snapshots = @( @{ # OPTIONAL snapshotAfterDate = $someDateTime # OPTIONAL snapshotBeforeDate = $someDateTime # OPTIONAL snapshotId = $someString # OPTIONAL vmNamePrefix = $someString # REQUIRED mountConfig = @{ # OPTIONAL disableNetwork = $someBoolean # OPTIONAL hostId = $someString # OPTIONAL powerOn = $someBoolean # OPTIONAL removeNetworkDevices = $someBoolean # OPTIONAL vmName = $someString } # REQUIRED vmId = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchMountHypervVmReply </code> </example> <example> Runs the BatchOnDemandBackupVm operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: BatchOnDemandBackupVm $query = New-RscMutationHyperv -BatchOnDemandBackupVm # REQUIRED $query.Var.input = @{ # OPTIONAL userNote = $someString # REQUIRED config = @{ # REQUIRED vms = @( @{ # OPTIONAL backupConfig = @{ # OPTIONAL slaId = $someString } # OPTIONAL vmId = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchOnDemandBackupHypervVmReply </code> </example> <example> Runs the CreateVirtualMachineSnapshotDiskMount operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: CreateVirtualMachineSnapshotDiskMount $query = New-RscMutationHyperv -CreateVirtualMachineSnapshotDiskMount # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED targetVirtualMachineId = $someString # REQUIRED virtualDiskIds = @( $someString ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateVirtualMachineSnapshotMount operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: CreateVirtualMachineSnapshotMount $query = New-RscMutationHyperv -CreateVirtualMachineSnapshotMount # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL disableNetwork = $someBoolean # OPTIONAL hostId = $someString # OPTIONAL powerOn = $someBoolean # OPTIONAL removeNetworkDevices = $someBoolean # OPTIONAL vmName = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteAllSnapshots operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: DeleteAllSnapshots $query = New-RscMutationHyperv -DeleteAllSnapshots # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the DeleteVirtualMachineSnapshot operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: DeleteVirtualMachineSnapshot $query = New-RscMutationHyperv -DeleteVirtualMachineSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED location = $someInternalDeleteHypervVirtualMachineSnapshotRequestLocation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InternalDeleteHypervVirtualMachineSnapshotRequestLocation]) for enum values. # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the DeleteVirtualMachineSnapshotMount operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: DeleteVirtualMachineSnapshotMount $query = New-RscMutationHyperv -DeleteVirtualMachineSnapshotMount # REQUIRED $query.Var.input = @{ # OPTIONAL force = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadSnapshotFromLocation operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: DownloadSnapshotFromLocation $query = New-RscMutationHyperv -DownloadSnapshotFromLocation # REQUIRED $query.Var.input = @{ # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString # REQUIRED downloadConfig = @{ # OPTIONAL slaId = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadVirtualMachineLevelFiles operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: DownloadVirtualMachineLevelFiles $query = New-RscMutationHyperv -DownloadVirtualMachineLevelFiles # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED configFileExtensions = @( $someString ) # REQUIRED virtualDiskIds = @( $someString ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadVirtualMachineSnapshot operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: DownloadVirtualMachineSnapshot $query = New-RscMutationHyperv -DownloadVirtualMachineSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadVirtualMachineSnapshotFiles operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: DownloadVirtualMachineSnapshotFiles $query = New-RscMutationHyperv -DownloadVirtualMachineSnapshotFiles # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL legalHoldDownloadConfig = @{ # REQUIRED isLegalHoldDownload = $someBoolean } # REQUIRED paths = @( $someString ) } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExportVirtualMachine operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: ExportVirtualMachine $query = New-RscMutationHyperv -ExportVirtualMachine # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL disableNetwork = $someBoolean # OPTIONAL hostId = $someString # OPTIONAL powerOn = $someBoolean # OPTIONAL removeNetworkDevices = $someBoolean # OPTIONAL vmName = $someString # REQUIRED path = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the InplaceExportVirtualMachine operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: InplaceExportVirtualMachine $query = New-RscMutationHyperv -InplaceExportVirtualMachine # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL exportVmPath = $someString # OPTIONAL hostId = $someString # OPTIONAL shouldKeepHypervVmCopyAfterRecovery = $someBoolean } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the InstantRecoverVirtualMachineSnapshot operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: InstantRecoverVirtualMachineSnapshot $query = New-RscMutationHyperv -InstantRecoverVirtualMachineSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL hostId = $someString # OPTIONAL vmName = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the OnDemandSnapshot operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: OnDemandSnapshot $query = New-RscMutationHyperv -OnDemandSnapshot # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RefreshScvmm operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: RefreshScvmm $query = New-RscMutationHyperv -RefreshScvmm # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RefreshServer operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: RefreshServer $query = New-RscMutationHyperv -RefreshServer # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RegisterAgentVirtualMachine operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: RegisterAgentVirtualMachine $query = New-RscMutationHyperv -RegisterAgentVirtualMachine # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the RegisterScvmm operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: RegisterScvmm $query = New-RscMutationHyperv -RegisterScvmm # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED scvmm = @{ # REQUIRED hostname = $someString # REQUIRED runAsAccount = $someString # REQUIRED shouldDeployAgent = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RestoreVirtualMachineSnapshotFiles operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: RestoreVirtualMachineSnapshotFiles $query = New-RscMutationHyperv -RestoreVirtualMachineSnapshotFiles # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL targetVirtualMachineId = $someString # REQUIRED restoreConfig = @( @{ # REQUIRED path = $someString # REQUIRED restorePath = $someString } ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ScvmmDelete operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: ScvmmDelete $query = New-RscMutationHyperv -ScvmmDelete # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the ScvmmUpdate operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: ScvmmUpdate $query = New-RscMutationHyperv -ScvmmUpdate # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED updateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL hostname = $someString # OPTIONAL runAsAccount = $someString # OPTIONAL shouldDeployAgent = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: HypervScvmmUpdateReply </code> </example> <example> Runs the UpdateVirtualMachine operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: UpdateVirtualMachine $query = New-RscMutationHyperv -UpdateVirtualMachine # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED vmUpdateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL virtualDiskIdsExcludedFromSnapshot = @( $someString ) # OPTIONAL cloudInstantiationSpec = @{ # REQUIRED imageRetentionInSeconds = $someInt64 } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateHypervVirtualMachineReply </code> </example> <example> Runs the UpdateVirtualMachineSnapshotMount operation of the 'Microsoft Hyper-V' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Hyperv # API Operation: UpdateVirtualMachineSnapshotMount $query = New-RscMutationHyperv -UpdateVirtualMachineSnapshotMount # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED powerStatus = $someBoolean } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateHypervVirtualMachineSnapshotMountReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationIntegration"> <summary> Create a new RscQuery object for any of the 6 operations in the 'Integration' API domain: CreateIntegration, CreateIntegrations, DeleteIntegration, DeleteIntegrations, UpdateIntegration, or UpdateIntegrations. </summary> <description> 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. </description> <example> Runs the CreateIntegration operation of the 'Integration' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Integration # API Operation: CreateIntegration $query = New-RscMutationIntegration -CreateIntegration # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values. # REQUIRED config = @{ # OPTIONAL dataLossPrevention = @{ # OPTIONAL policies = @( $someString ) # OPTIONAL genericNas = @{ # REQUIRED workloadId = $someString # REQUIRED shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values. # REQUIRED shareId = $someString # REQUIRED path = $someString } # OPTIONAL vmwareVm = @{ # REQUIRED workloadId = $someString # REQUIRED osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values. # REQUIRED path = $someString } # OPTIONAL serviceAccountId = $someString # OPTIONAL serviceAccountName = $someString # OPTIONAL status = @{ # OPTIONAL code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values. } # REQUIRED targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values. } # OPTIONAL serviceNowItsm = @{ # REQUIRED serviceAccountId = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateIntegrationReply </code> </example> <example> Runs the CreateIntegrations operation of the 'Integration' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Integration # API Operation: CreateIntegrations $query = New-RscMutationIntegration -CreateIntegrations # REQUIRED $query.Var.input = @{ # REQUIRED integrations = @( @{ # REQUIRED name = $someString # REQUIRED integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values. # REQUIRED config = @{ # OPTIONAL dataLossPrevention = @{ # OPTIONAL policies = @( $someString ) # OPTIONAL genericNas = @{ # REQUIRED workloadId = $someString # REQUIRED shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values. # REQUIRED shareId = $someString # REQUIRED path = $someString } # OPTIONAL vmwareVm = @{ # REQUIRED workloadId = $someString # REQUIRED osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values. # REQUIRED path = $someString } # OPTIONAL serviceAccountId = $someString # OPTIONAL serviceAccountName = $someString # OPTIONAL status = @{ # OPTIONAL code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values. } # REQUIRED targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values. } # OPTIONAL serviceNowItsm = @{ # REQUIRED serviceAccountId = $someString } } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateIntegrationsReply </code> </example> <example> Runs the DeleteIntegration operation of the 'Integration' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Integration # API Operation: DeleteIntegration $query = New-RscMutationIntegration -DeleteIntegration # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt64 } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteIntegrations operation of the 'Integration' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Integration # API Operation: DeleteIntegrations $query = New-RscMutationIntegration -DeleteIntegrations # REQUIRED $query.Var.input = @{ # REQUIRED ids = @( $someInt64 ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateIntegration operation of the 'Integration' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Integration # API Operation: UpdateIntegration $query = New-RscMutationIntegration -UpdateIntegration # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt64 # REQUIRED name = $someString # REQUIRED integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values. # REQUIRED config = @{ # OPTIONAL dataLossPrevention = @{ # OPTIONAL policies = @( $someString ) # OPTIONAL genericNas = @{ # REQUIRED workloadId = $someString # REQUIRED shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values. # REQUIRED shareId = $someString # REQUIRED path = $someString } # OPTIONAL vmwareVm = @{ # REQUIRED workloadId = $someString # REQUIRED osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values. # REQUIRED path = $someString } # OPTIONAL serviceAccountId = $someString # OPTIONAL serviceAccountName = $someString # OPTIONAL status = @{ # OPTIONAL code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values. } # REQUIRED targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values. } # OPTIONAL serviceNowItsm = @{ # REQUIRED serviceAccountId = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateIntegrations operation of the 'Integration' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Integration # API Operation: UpdateIntegrations $query = New-RscMutationIntegration -UpdateIntegrations # REQUIRED $query.Var.input = @{ # REQUIRED integrations = @( @{ # REQUIRED id = $someInt64 # REQUIRED name = $someString # REQUIRED integrationType = $someIntegrationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IntegrationType]) for enum values. # REQUIRED config = @{ # OPTIONAL dataLossPrevention = @{ # OPTIONAL policies = @( $someString ) # OPTIONAL genericNas = @{ # REQUIRED workloadId = $someString # REQUIRED shareType = $someDlpConfigShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigShareType]) for enum values. # REQUIRED shareId = $someString # REQUIRED path = $someString } # OPTIONAL vmwareVm = @{ # REQUIRED workloadId = $someString # REQUIRED osType = $someDlpConfigOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigOsType]) for enum values. # REQUIRED path = $someString } # OPTIONAL serviceAccountId = $someString # OPTIONAL serviceAccountName = $someString # OPTIONAL status = @{ # OPTIONAL code = $someDlpStatusCode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpStatusCode]) for enum values. } # REQUIRED targetType = $someDlpConfigTargetType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DlpConfigTargetType]) for enum values. } # OPTIONAL serviceNowItsm = @{ # REQUIRED serviceAccountId = $someString } } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationK8s"> <summary> Create a new RscQuery object for any of the 17 operations in the 'Kubernetes' API domain: AddCluster, AddProtectionSet, ArchiveCluster, CreateAgentManifest, CreateCluster, CreateNamespaceSnapshots, CreateProtectionSetSnapshot, DeleteCluster, DeleteProtectionSet, ExportNamespace, ExportProtectionSetSnapshot, RefreshCluster, RefreshV2Cluster, RestoreNamespace, RestoreProtectionSetSnapshot, UpdateCluster, or UpdateProtectionSet. </summary> <description> New-RscMutationK8s creates a new mutation object for operations in the 'Kubernetes' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 17 operations in the 'Kubernetes' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddCluster, AddProtectionSet, ArchiveCluster, CreateAgentManifest, CreateCluster, CreateNamespaceSnapshots, CreateProtectionSetSnapshot, DeleteCluster, DeleteProtectionSet, ExportNamespace, ExportProtectionSetSnapshot, RefreshCluster, RefreshV2Cluster, RestoreNamespace, RestoreProtectionSetSnapshot, UpdateCluster, or UpdateProtectionSet. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationK8s -AddCluster).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationK8s -AddCluster).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddCluster operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: AddCluster $query = New-RscMutationK8s -AddCluster # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # OPTIONAL id = $someString # OPTIONAL kubeconfig = $someString # OPTIONAL registry = $someString # OPTIONAL serviceAccountName = $someString # OPTIONAL distribution = $someString # OPTIONAL pullSecret = $someString # OPTIONAL transport = $someString # OPTIONAL isAutoPsCreationEnabled = $someBoolean # OPTIONAL clientSecret = $someString # OPTIONAL accessToken = $someString # OPTIONAL region = $someString # OPTIONAL onboardingType = $someString # OPTIONAL clientId = $someString # OPTIONAL eksConfig = @{ # REQUIRED cloudAccountId = $someString # REQUIRED eksClusterArn = $someString } # OPTIONAL kuprServerProxyConfig = @{ # OPTIONAL port = $someInt # REQUIRED cert = $someString # REQUIRED ipAddress = $someString } # REQUIRED name = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: K8sClusterSummary </code> </example> <example> Runs the AddProtectionSet operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: AddProtectionSet $query = New-RscMutationK8s -AddProtectionSet # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL creationType = $someString # OPTIONAL kubernetesNamespace = $someString # OPTIONAL hookConfigs = @( $someString ) # REQUIRED definition = $someString # REQUIRED kubernetesClusterId = $someString # REQUIRED name = $someString # REQUIRED rsType = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: K8sProtectionSetSummary </code> </example> <example> Runs the ArchiveCluster operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: ArchiveCluster $query = New-RscMutationK8s -ArchiveCluster # REQUIRED $query.Var.input = @{ # REQUIRED clusterId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ArchiveK8sClusterReply </code> </example> <example> Runs the CreateAgentManifest operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: CreateAgentManifest $query = New-RscMutationK8s -CreateAgentManifest # REQUIRED $query.Var.input = @{ # REQUIRED clusterId = $someString # REQUIRED timeoutMinutes = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateK8sAgentManifestReply </code> </example> <example> Runs the CreateCluster operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: CreateCluster $query = New-RscMutationK8s -CreateCluster # REQUIRED $query.Var.input = @{ # OPTIONAL cdmClusterId = $someString # REQUIRED hostList = @( $someString ) # REQUIRED name = $someString # REQUIRED port = $someInt # REQUIRED rbsPortRanges = @( @{ # OPTIONAL portMin = $someInt # OPTIONAL portMax = $someInt } ) # OPTIONAL userDrivenPortRanges = @( @{ # OPTIONAL portMin = $someInt # OPTIONAL portMax = $someInt } ) # REQUIRED type = $someK8sClusterProtoType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.K8sClusterProtoType]) for enum values. # OPTIONAL proxyUrl = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateK8sClusterReply </code> </example> <example> Runs the CreateNamespaceSnapshots operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: CreateNamespaceSnapshots $query = New-RscMutationK8s -CreateNamespaceSnapshots # REQUIRED $query.Var.input = @{ # REQUIRED snapshotInput = @( @{ # REQUIRED namespaceId = $someString # OPTIONAL onDemandSnapshotSlaId = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> <example> Runs the CreateProtectionSetSnapshot operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: CreateProtectionSetSnapshot $query = New-RscMutationK8s -CreateProtectionSetSnapshot # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteCluster operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: DeleteCluster $query = New-RscMutationK8s -DeleteCluster # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteProtectionSet operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: DeleteProtectionSet $query = New-RscMutationK8s -DeleteProtectionSet # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the ExportNamespace operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: ExportNamespace $query = New-RscMutationK8s -ExportNamespace # REQUIRED $query.Var.input = @{ # REQUIRED snapshotUuid = $someString # REQUIRED targetClusterUuid = $someString # REQUIRED targetNamespaceName = $someString # OPTIONAL labelSelector = @{ # OPTIONAL matchExpressions = @( @{ # OPTIONAL key = $someString # OPTIONAL operator = $someString # OPTIONAL values = @( $someString ) } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the ExportProtectionSetSnapshot operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: ExportProtectionSetSnapshot $query = New-RscMutationK8s -ExportProtectionSetSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED jobConfig = @{ # OPTIONAL filter = $someString # OPTIONAL pvcNames = @( $someString ) # OPTIONAL shouldDeleteNamespaceIfExportFailed = $someBoolean # OPTIONAL ignoreErrors = $someBoolean # REQUIRED targetClusterId = $someString # REQUIRED targetNamespaceName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RefreshCluster operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: RefreshCluster $query = New-RscMutationK8s -RefreshCluster # REQUIRED $query.Var.input = @{ # REQUIRED k8sClusterId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the RefreshV2Cluster operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: RefreshV2Cluster $query = New-RscMutationK8s -RefreshV2Cluster # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RestoreNamespace operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: RestoreNamespace $query = New-RscMutationK8s -RestoreNamespace # REQUIRED $query.Var.input = @{ # REQUIRED snapshotUuid = $someString # REQUIRED targetClusterUuid = $someString # REQUIRED targetNamespaceName = $someString # OPTIONAL labelSelector = @{ # OPTIONAL matchExpressions = @( @{ # OPTIONAL key = $someString # OPTIONAL operator = $someString # OPTIONAL values = @( $someString ) } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the RestoreProtectionSetSnapshot operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: RestoreProtectionSetSnapshot $query = New-RscMutationK8s -RestoreProtectionSetSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED jobConfig = @{ # OPTIONAL filter = $someString # OPTIONAL pvcNames = @( $someString ) # OPTIONAL ignoreErrors = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the UpdateCluster operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: UpdateCluster $query = New-RscMutationK8s -UpdateCluster # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL kubeconfig = $someString # OPTIONAL registry = $someString # OPTIONAL serviceAccountName = $someString # OPTIONAL pullSecret = $someString # OPTIONAL transport = $someString # OPTIONAL isAutoPsCreationEnabled = $someBoolean # OPTIONAL clientSecret = $someString # OPTIONAL accessToken = $someString # OPTIONAL cloudAccountId = $someString # OPTIONAL clientId = $someString # OPTIONAL kuprServerProxyConfig = @{ # OPTIONAL port = $someInt # REQUIRED cert = $someString # REQUIRED ipAddress = $someString } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the UpdateProtectionSet operation of the 'Kubernetes' API domain. <code> PS > # Create an RscQuery object for: # API Domain: K8s # API Operation: UpdateProtectionSet $query = New-RscMutationK8s -UpdateProtectionSet # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL definition = $someString # OPTIONAL hookConfigs = @( $someString ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationLdap"> <summary> Create a new RscQuery object for any of the 4 operations in the 'LDAP' API domain: DeletePrincipals, RemoveIntegration, SetMfaSetting, or UpdateIntegration. </summary> <description> 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. </description> <example> Runs the DeletePrincipals operation of the 'LDAP' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Ldap # API Operation: DeletePrincipals $query = New-RscMutationLdap -DeletePrincipals # REQUIRED $query.Var.principalIds = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the RemoveIntegration operation of the 'LDAP' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Ldap # API Operation: RemoveIntegration $query = New-RscMutationLdap -RemoveIntegration # REQUIRED $query.Var.id = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the SetMfaSetting operation of the 'LDAP' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Ldap # API Operation: SetMfaSetting $query = New-RscMutationLdap -SetMfaSetting # REQUIRED $query.Var.input = @{ # OPTIONAL ldapId = $someString # OPTIONAL isTotpEnforced = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the UpdateIntegration operation of the 'LDAP' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Ldap # API Operation: UpdateIntegration $query = New-RscMutationLdap -UpdateIntegration # OPTIONAL $query.Var.id = $someString # REQUIRED $query.Var.name = $someString # REQUIRED $query.Var.bindUserName = $someString # REQUIRED $query.Var.bindUserPassword = $someString # OPTIONAL $query.Var.baseDn = $someString # OPTIONAL $query.Var.trustedCerts = $someString # OPTIONAL $query.Var.dynamicDnsName = $someString # OPTIONAL $query.Var.ldapServers = @( @{ # OPTIONAL hostname = $someString # OPTIONAL port = $someInt # OPTIONAL useTls = $someBoolean } ) # OPTIONAL $query.Var.userSearchFilter = $someString # OPTIONAL $query.Var.userNameAttr = $someString # OPTIONAL $query.Var.groupMembershipAttr = $someString # OPTIONAL $query.Var.groupSearchFilter = $someString # OPTIONAL $query.Var.groupMemberAttr = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationM365"> <summary> Create a new RscQuery object for any of the 4 operations in the 'Microsoft 365' API domain: BackupMailbox, BackupOnedrive, BackupSharepointDrive, or BackupTeam. </summary> <description> 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. </description> <example> Runs the BackupMailbox operation of the 'Microsoft 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: M365 # API Operation: BackupMailbox $query = New-RscMutationM365 -BackupMailbox # REQUIRED $query.Var.input = @{ # REQUIRED workloadUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> <example> Runs the BackupOnedrive operation of the 'Microsoft 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: M365 # API Operation: BackupOnedrive $query = New-RscMutationM365 -BackupOnedrive # REQUIRED $query.Var.input = @{ # REQUIRED workloadUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> <example> Runs the BackupSharepointDrive operation of the 'Microsoft 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: M365 # API Operation: BackupSharepointDrive $query = New-RscMutationM365 -BackupSharepointDrive # REQUIRED $query.Var.input = @{ # REQUIRED workloadUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> <example> Runs the BackupTeam operation of the 'Microsoft 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: M365 # API Operation: BackupTeam $query = New-RscMutationM365 -BackupTeam # REQUIRED $query.Var.input = @{ # REQUIRED workloadUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationManagedVolume"> <summary> 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. </summary> <description> 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. </description> <example> Runs the Add operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: Add $query = New-RscMutationManagedVolume -Add # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED managedVolumeConfig = @{ # OPTIONAL numChannels = $someInt # OPTIONAL subnet = $someString # OPTIONAL applicationTag = $someManagedVolumeApplicationTag # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeApplicationTag]) for enum values. # OPTIONAL mvType = $someCdmManagedVolumeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmManagedVolumeType]) for enum values. # REQUIRED exportConfig = @{ # OPTIONAL subnet = $someString # OPTIONAL shareType = $someManagedVolumeShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeShareType]) for enum values. # OPTIONAL managedVolumePatchConfig = @{ # OPTIONAL hostPatterns = @( $someString ) # OPTIONAL nodeHint = @( $someString ) # OPTIONAL smbDomainName = $someString # OPTIONAL smbValidIps = @( $someString ) # OPTIONAL smbValidUsers = @( $someString ) } } # REQUIRED name = $someString # OPTIONAL slaClientConfig = @{ # OPTIONAL shouldCancelBackupOnPreBackupScriptFailure = $someBoolean # OPTIONAL shouldEnableLogExport = $someBoolean # REQUIRED backupScript = @{ # OPTIONAL timeout = $someInt64 # REQUIRED scriptCommand = $someString } # REQUIRED channelHostMountPaths = @( $someString ) # REQUIRED clientHostId = $someString # OPTIONAL postBackupScriptOnBackupFailure = @{ # OPTIONAL timeout = $someInt64 # REQUIRED scriptCommand = $someString } # OPTIONAL postBackupScriptOnBackupSuccess = @{ # OPTIONAL timeout = $someInt64 # REQUIRED scriptCommand = $someString } # OPTIONAL preBackupScript = @{ # OPTIONAL timeout = $someInt64 # REQUIRED scriptCommand = $someString } # REQUIRED username = $someString } # REQUIRED volumeSize = $someInt64 } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddManagedVolumeReply </code> </example> <example> Runs the BeginSnapshot operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: BeginSnapshot $query = New-RscMutationManagedVolume -BeginSnapshot # REQUIRED $query.Var.input = @{ # OPTIONAL ownerId = $someString # OPTIONAL config = @{ # OPTIONAL isAsync = $someBoolean # OPTIONAL managedVolumeSnapshotReferenceWrapper = @{ # OPTIONAL reference = @{ # OPTIONAL managedVolumeSnapshotReferenceDefinition = @{ # OPTIONAL managedVolumeSnapshotReferencePatch = @{ # OPTIONAL expiryDurationInMinutes = $someInt } # REQUIRED ownerId = $someString } # REQUIRED refId = $someString } } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BeginManagedVolumeSnapshotReply </code> </example> <example> Runs the Delete operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: Delete $query = New-RscMutationManagedVolume -Delete # REQUIRED $query.Var.input = @{ # OPTIONAL preserveSnapshots = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DeleteManagedVolumeReply </code> </example> <example> Runs the DeleteSnapshotExport operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: DeleteSnapshotExport $query = New-RscMutationManagedVolume -DeleteSnapshotExport # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadFiles operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: DownloadFiles $query = New-RscMutationManagedVolume -DownloadFiles # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL legalHoldDownloadConfig = @{ # REQUIRED isLegalHoldDownload = $someBoolean } # REQUIRED paths = @( $someString ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadFromLocation operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: DownloadFromLocation $query = New-RscMutationManagedVolume -DownloadFromLocation # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the EndSnapshot operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: EndSnapshot $query = New-RscMutationManagedVolume -EndSnapshot # REQUIRED $query.Var.input = @{ # OPTIONAL endSnapshotDelayInSeconds = $someInt # OPTIONAL ownerId = $someString # REQUIRED id = $someString # OPTIONAL params = @{ # OPTIONAL isAsync = $someBoolean # OPTIONAL retentionConfig = @{ # OPTIONAL slaId = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: EndManagedVolumeSnapshotReply </code> </example> <example> Runs the ExportSnapshot operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: ExportSnapshot $query = New-RscMutationManagedVolume -ExportSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL params = @{ # OPTIONAL shouldDownloadToLocal = $someBoolean # OPTIONAL managedVolumeExportConfig = @{ # OPTIONAL subnet = $someString # OPTIONAL shareType = $someManagedVolumeShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeShareType]) for enum values. # OPTIONAL managedVolumePatchConfig = @{ # OPTIONAL hostPatterns = @( $someString ) # OPTIONAL nodeHint = @( $someString ) # OPTIONAL smbDomainName = $someString # OPTIONAL smbValidIps = @( $someString ) # OPTIONAL smbValidUsers = @( $someString ) } } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the Resize operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: Resize $query = New-RscMutationManagedVolume -Resize # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED size = @{ # OPTIONAL newSize = $someInt64 } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the TakeOnDemandSnapshot operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: TakeOnDemandSnapshot $query = New-RscMutationManagedVolume -TakeOnDemandSnapshot # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL retentionConfig = @{ # OPTIONAL slaId = $someString } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the Update operation of the 'Managed Volume' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ManagedVolume # API Operation: Update $query = New-RscMutationManagedVolume -Update # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED update = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL name = $someString # OPTIONAL volumeSize = $someInt64 # OPTIONAL subnet = $someString # OPTIONAL config = @{ # OPTIONAL hostPatterns = @( $someString ) # OPTIONAL nodeHint = @( $someString ) # OPTIONAL smbDomainName = $someString # OPTIONAL smbValidIps = @( $someString ) # OPTIONAL smbValidUsers = @( $someString ) } # OPTIONAL slaClientConfig = @{ # OPTIONAL backupScriptCommand = $someString # OPTIONAL backupScriptTimeout = $someInt64 # OPTIONAL channelHostMountPaths = @( $someString ) # OPTIONAL clientHostId = $someString # OPTIONAL postBackupScriptOnBackupFailureCommand = $someString # OPTIONAL postBackupScriptOnBackupFailureTimeout = $someInt64 # OPTIONAL postBackupScriptOnBackupSuccessCommand = $someString # OPTIONAL postBackupScriptOnBackupSuccessTimeout = $someInt64 # OPTIONAL preBackupScriptCommand = $someString # OPTIONAL preBackupScriptTimeout = $someInt64 # OPTIONAL shouldCancelBackupOnPreBackupScriptFailure = $someBoolean # OPTIONAL username = $someString # REQUIRED shouldDisablePostBackupScriptOnBackupFailure = $someBoolean # REQUIRED shouldDisablePostBackupScriptOnBackupSuccess = $someBoolean # REQUIRED shouldDisablePreBackupScript = $someBoolean } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateManagedVolumeReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationMisc"> <summary> Create a new RscQuery object for any of the 134 operations in the 'Miscellaneous' API domain: AddAdGroupsToHierarchy, AddConfiguredGroupToHierarchy, AddCustomIntelFeed, AddInventoryWorkloads, AddRoleAssignments, AddVlan, AddVmAppConsistentSpecs, AirGapStatus, ArchiveCrawl, AssignProtection, BatchDeassignRoleFromUserGroups, BulkCreateNasFilesets, CancelDownloadPackage, CancelScheduledUpgrade, CancelTaskchain, ChangePassword, CreateCustomAnalyzer, CreateEventDigestBatch, CreateGuestCredential, CreateLegalHold, CreateOnDemandVolumeGroupBackup, CreateVappsInstantRecovery, DeactivateCustomAnalyzer, DeleteAdGroupsFromHierarchy, DeleteDistributionListDigestBatch, DeleteEventDigest, DeleteGuestCredentialById, DeleteIntelFeed, DeleteVolumeGroupMount, DeregisterPrivateContainerRegistry, DisableSupportUserAccess, DissolveLegalHold, EnableAutomaticFmdUpload, EnableDisableAppConsistency, EnableSupportUserAccess, ExcludeVmDisks, ExpireSnoozedDirectories, GenerateConfigProtectionRestoreForm, GenerateSupportBundle, GetDownloadUrl, HideRevealNasNamespaces, InstallIoFilter, InviteSsoGroup, ListCidrsForComputeSetting, LockUsersByAdmin, LogoutFromRubrikSupportPortal, MakePrimary, ManageProtectionForLinkedObjects, ModifyEventDigestBatch, ModifyIpmi, MountDisk, NotificationForGetLicense, RecoverCloudDirectMultiPaths, RecoverCloudDirectPath, RefreshDomain, RefreshGlobalManagerConnectivityStatus, RemoveDisk, RemoveInventoryWorkloads, RemovePrivateEndpointList, RemoveProxyConfig, RemoveVlans, ReseedLogShippingSecondary, ResetAllOrgUsersPasswords, ResetUsersPasswordsWithUserIds, ResizeDisk, ResolveAnomaly, ResolveVolumeGroupsConflict, RetryBackup, RetryDownloadPackageJob, RevokeAllOrgRoles, RunCustomAnalyzer, ScheduleUpgradeBatchJob, SetAnalyzerRisks, SetBundleApprovalStatus, SetCustomerTags, SetDatastoreFreespaceThresholds, SetIpWhitelistEnabled, SetMfaSetting, SetPrivateContainerRegistry, SetTotpConfig, SetUpgradeType, SetUserLevelTotpEnforcement, SetWorkloadAlertSetting, SetupDisk, StartCrawl, StartDownloadPackageBatchJob, StartExportRdsInstanceJob, StartPeriodicUpgradePrechecksOnDemandJob, StartUpgradeBatchJob, StartVolumeGroupMount, StopJobInstance, StopJobInstanceFromEventSeries, SupportPortalLogin, SwitchProductToOnboardingMode, TriggerCloudComputeConnectivityCheck, TriggerExocomputeHealthCheck, UninstallIoFilter, UnlockUsersByAdmin, UnmountDisk, UpdateAccountOwner, UpdateAdGroup, UpdateAgentDeploymentSetting, UpdateAgentDeploymentSettingInBatch, UpdateAuthDomainUsersHiddenStatus, UpdateBackupThrottleSetting, UpdateBadDiskLedStatus, UpdateConfiguredGroup, UpdateCustomAnalyzer, UpdateCustomIntelFeed, UpdateCustomerAppPermissions, UpdateDistributionListDigest, UpdateDnsServersAndSearchDomains, UpdateEventDigest, UpdateFloatingIps, UpdateGuestCredential, UpdateInsightState, UpdateIocStatus, UpdateIpWhitelist, UpdateLambdaSettings, UpdateLockoutConfig, UpdateManagedIdentities, UpdateNetworkThrottle, UpdateProxyConfig, UpdateRoleAssignments, UpdateSupportUserAccess, UpdateTunnelStatus, UpdateVlan, UpdateVolumeGroup, UpdateWhitelistedAnalyzers, UpgradeIoFilter, UpgradeToRsc, ValidateAndSaveCustomerKmsInfo, VmMakePrimary, or WarmSearchCache. </summary> <description> New-RscMutationMisc creates a new mutation object for operations in the 'Miscellaneous' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 134 operations in the 'Miscellaneous' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddAdGroupsToHierarchy, AddConfiguredGroupToHierarchy, AddCustomIntelFeed, AddInventoryWorkloads, AddRoleAssignments, AddVlan, AddVmAppConsistentSpecs, AirGapStatus, ArchiveCrawl, AssignProtection, BatchDeassignRoleFromUserGroups, BulkCreateNasFilesets, CancelDownloadPackage, CancelScheduledUpgrade, CancelTaskchain, ChangePassword, CreateCustomAnalyzer, CreateEventDigestBatch, CreateGuestCredential, CreateLegalHold, CreateOnDemandVolumeGroupBackup, CreateVappsInstantRecovery, DeactivateCustomAnalyzer, DeleteAdGroupsFromHierarchy, DeleteDistributionListDigestBatch, DeleteEventDigest, DeleteGuestCredentialById, DeleteIntelFeed, DeleteVolumeGroupMount, DeregisterPrivateContainerRegistry, DisableSupportUserAccess, DissolveLegalHold, EnableAutomaticFmdUpload, EnableDisableAppConsistency, EnableSupportUserAccess, ExcludeVmDisks, ExpireSnoozedDirectories, GenerateConfigProtectionRestoreForm, GenerateSupportBundle, GetDownloadUrl, HideRevealNasNamespaces, InstallIoFilter, InviteSsoGroup, ListCidrsForComputeSetting, LockUsersByAdmin, LogoutFromRubrikSupportPortal, MakePrimary, ManageProtectionForLinkedObjects, ModifyEventDigestBatch, ModifyIpmi, MountDisk, NotificationForGetLicense, RecoverCloudDirectMultiPaths, RecoverCloudDirectPath, RefreshDomain, RefreshGlobalManagerConnectivityStatus, RemoveDisk, RemoveInventoryWorkloads, RemovePrivateEndpointList, RemoveProxyConfig, RemoveVlans, ReseedLogShippingSecondary, ResetAllOrgUsersPasswords, ResetUsersPasswordsWithUserIds, ResizeDisk, ResolveAnomaly, ResolveVolumeGroupsConflict, RetryBackup, RetryDownloadPackageJob, RevokeAllOrgRoles, RunCustomAnalyzer, ScheduleUpgradeBatchJob, SetAnalyzerRisks, SetBundleApprovalStatus, SetCustomerTags, SetDatastoreFreespaceThresholds, SetIpWhitelistEnabled, SetMfaSetting, SetPrivateContainerRegistry, SetTotpConfig, SetUpgradeType, SetUserLevelTotpEnforcement, SetWorkloadAlertSetting, SetupDisk, StartCrawl, StartDownloadPackageBatchJob, StartExportRdsInstanceJob, StartPeriodicUpgradePrechecksOnDemandJob, StartUpgradeBatchJob, StartVolumeGroupMount, StopJobInstance, StopJobInstanceFromEventSeries, SupportPortalLogin, SwitchProductToOnboardingMode, TriggerCloudComputeConnectivityCheck, TriggerExocomputeHealthCheck, UninstallIoFilter, UnlockUsersByAdmin, UnmountDisk, UpdateAccountOwner, UpdateAdGroup, UpdateAgentDeploymentSetting, UpdateAgentDeploymentSettingInBatch, UpdateAuthDomainUsersHiddenStatus, UpdateBackupThrottleSetting, UpdateBadDiskLedStatus, UpdateConfiguredGroup, UpdateCustomAnalyzer, UpdateCustomIntelFeed, UpdateCustomerAppPermissions, UpdateDistributionListDigest, UpdateDnsServersAndSearchDomains, UpdateEventDigest, UpdateFloatingIps, UpdateGuestCredential, UpdateInsightState, UpdateIocStatus, UpdateIpWhitelist, UpdateLambdaSettings, UpdateLockoutConfig, UpdateManagedIdentities, UpdateNetworkThrottle, UpdateProxyConfig, UpdateRoleAssignments, UpdateSupportUserAccess, UpdateTunnelStatus, UpdateVlan, UpdateVolumeGroup, UpdateWhitelistedAnalyzers, UpgradeIoFilter, UpgradeToRsc, ValidateAndSaveCustomerKmsInfo, VmMakePrimary, or WarmSearchCache. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMisc -AddAdGroupsToHierarchy).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMisc -AddAdGroupsToHierarchy).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddAdGroupsToHierarchy operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AddAdGroupsToHierarchy $query = New-RscMutationMisc -AddAdGroupsToHierarchy # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED naturalIds = @( $someString ) # OPTIONAL adGroupSpec = @( @{ # REQUIRED naturalId = $someString # OPTIONAL displayName = $someString # REQUIRED filterAttributes = @( @{ # OPTIONAL filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values. # OPTIONAL attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values. # OPTIONAL attributeKey = $someString # OPTIONAL attributeValue = $someString # OPTIONAL dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values. } ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the AddConfiguredGroupToHierarchy operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AddConfiguredGroupToHierarchy $query = New-RscMutationMisc -AddConfiguredGroupToHierarchy # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED displayName = $someString # OPTIONAL wildcard = $someString # REQUIRED pdls = @( $someString ) # OPTIONAL workload = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. # OPTIONAL groupFilterAttributes = @( @{ # OPTIONAL filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values. # OPTIONAL attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values. # OPTIONAL attributeKey = $someString # OPTIONAL attributeValue = $someString # OPTIONAL dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values. } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddConfiguredGroupToHierarchyReply </code> </example> <example> Runs the AddCustomIntelFeed operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AddCustomIntelFeed $query = New-RscMutationMisc -AddCustomIntelFeed # REQUIRED $query.Var.input = @{ # OPTIONAL name = $someString # OPTIONAL description = $someString # OPTIONAL userId = $someString # REQUIRED entries = @( @{ # OPTIONAL iocString = $someString # OPTIONAL threatFamily = $someString # REQUIRED iocType = $someThreatFeedType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatFeedType]) for enum values. } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddCustomIntelFeedReply </code> </example> <example> Runs the AddInventoryWorkloads operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AddInventoryWorkloads $query = New-RscMutationMisc -AddInventoryWorkloads # REQUIRED $query.Var.input = @{ # REQUIRED inventoryCards = @( $someInventoryCard # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventoryCard]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the AddRoleAssignments operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AddRoleAssignments $query = New-RscMutationMisc -AddRoleAssignments # OPTIONAL $query.Var.userIds = @( $someString ) # OPTIONAL $query.Var.groupIds = @( $someString ) # REQUIRED $query.Var.roleIds = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the AddVlan operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AddVlan $query = New-RscMutationMisc -AddVlan # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED vlanInfo = @{ # OPTIONAL gateway = $someString # OPTIONAL alias = $someString # REQUIRED interfaces = @( @{ # REQUIRED ip = $someString # REQUIRED node = $someString } ) # REQUIRED netmask = $someString # REQUIRED vlan = $someInt } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the AddVmAppConsistentSpecs operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AddVmAppConsistentSpecs $query = New-RscMutationMisc -AddVmAppConsistentSpecs # REQUIRED $query.Var.input = @{ # REQUIRED snappableIds = @( $someString ) # OPTIONAL preSnapshotScriptPath = $someString # OPTIONAL preSnapshotScriptTimeoutInSeconds = $someInt # OPTIONAL postSnapshotScriptPath = $someString # OPTIONAL postSnapshotScriptTimeoutInSeconds = $someInt # REQUIRED cancelBackupIfPreScriptFails = $someBoolean # REQUIRED objectType = $someCloudNativeVmAppConsistentObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeVmAppConsistentObjectType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddVmAppConsistentSpecsReply </code> </example> <example> Runs the AirGapStatus operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AirGapStatus $query = New-RscMutationMisc -AirGapStatus # REQUIRED $query.Var.input = @{ # OPTIONAL isAirGapped = $someBoolean # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ArchiveCrawl operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ArchiveCrawl $query = New-RscMutationMisc -ArchiveCrawl # REQUIRED $query.Var.crawlId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the AssignProtection operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: AssignProtection $query = New-RscMutationMisc -AssignProtection # REQUIRED $query.Var.input = @{ # OPTIONAL globalSlaOptionalFid = $someString # REQUIRED globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values. # REQUIRED objectIds = @( $someString ) # REQUIRED backupInput = @{ # OPTIONAL mosaicBackupStoreInfo = @{ # OPTIONAL storeName = $someString } # OPTIONAL mosaicMonitorInfo = @{ # OPTIONAL isEnabled = $someBoolean # OPTIONAL frequency = $someInt # OPTIONAL frequencyUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL shouldBackupIndex = $someBoolean # OPTIONAL shouldDelete = $someBoolean # OPTIONAL shouldDeleteData = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SlaAssignResult </code> </example> <example> Runs the BatchDeassignRoleFromUserGroups operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: BatchDeassignRoleFromUserGroups $query = New-RscMutationMisc -BatchDeassignRoleFromUserGroups # REQUIRED $query.Var.userGroupToRoles = @( @{ # OPTIONAL userGroupId = $someString # OPTIONAL roleIds = @( $someString ) } ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the BulkCreateNasFilesets operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: BulkCreateNasFilesets $query = New-RscMutationMisc -BulkCreateNasFilesets # REQUIRED $query.Var.input = @{ # REQUIRED bulkRequest = @{ # OPTIONAL isHardlinkSupportEnabled = $someBoolean # OPTIONAL isPassthrough = $someBoolean # REQUIRED filesetTemplate = @{ # OPTIONAL backupScriptErrorHandling = $someString # OPTIONAL backupScriptTimeout = $someInt64 # OPTIONAL exceptions = @( $someString ) # OPTIONAL excludes = @( $someString ) # OPTIONAL isArrayEnabled = $someBoolean # OPTIONAL postBackupScript = $someString # OPTIONAL preBackupScript = $someString # OPTIONAL isCreatedByKupr = $someBoolean # OPTIONAL isCreatedByPolarisNas = $someBoolean # OPTIONAL operatingSystemType = $someFilesetTemplateCreateOperatingSystemType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateOperatingSystemType]) for enum values. # OPTIONAL shareType = $someFilesetTemplateCreateShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FilesetTemplateCreateShareType]) for enum values. # OPTIONAL filesetOptions = @{ # OPTIONAL allowBackupHiddenFoldersInNetworkMounts = $someBoolean # OPTIONAL allowBackupNetworkMounts = $someBoolean # OPTIONAL useWindowsVss = $someBoolean } # REQUIRED includes = @( $someString ) # REQUIRED name = $someString } # REQUIRED nasShareIds = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkCreateNasFilesetsReply </code> </example> <example> Runs the CancelDownloadPackage operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CancelDownloadPackage $query = New-RscMutationMisc -CancelDownloadPackage # REQUIRED $query.Var.clusterUuid = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CancelJobReply </code> </example> <example> Runs the CancelScheduledUpgrade operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CancelScheduledUpgrade $query = New-RscMutationMisc -CancelScheduledUpgrade # REQUIRED $query.Var.clusterUuid = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CancelJobReply </code> </example> <example> Runs the CancelTaskchain operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CancelTaskchain $query = New-RscMutationMisc -CancelTaskchain # REQUIRED $query.Var.taskchainId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the ChangePassword operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ChangePassword $query = New-RscMutationMisc -ChangePassword # REQUIRED $query.Var.input = @{ # OPTIONAL email = $someString # OPTIONAL password = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the CreateCustomAnalyzer operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CreateCustomAnalyzer $query = New-RscMutationMisc -CreateCustomAnalyzer # REQUIRED $query.Var.input = @{ # OPTIONAL analyzerType = $someAnalyzerTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerTypeEnum]) for enum values. # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL dictionaryCsv = $someString # OPTIONAL dictionary = @( $someString ) # OPTIONAL regex = $someString # OPTIONAL analyzerRiskInstance = @{ # OPTIONAL analyzerId = $someString # OPTIONAL riskVersion = $someInt # OPTIONAL risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values. } # OPTIONAL tagId = $someInt # OPTIONAL risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Analyzer </code> </example> <example> Runs the CreateEventDigestBatch operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CreateEventDigestBatch $query = New-RscMutationMisc -CreateEventDigestBatch # REQUIRED $query.Var.input = @{ # REQUIRED digests = @( @{ # OPTIONAL digestId = $someInt # REQUIRED digestName = $someString # REQUIRED frequencyHours = $someInt # REQUIRED isImmediate = $someBoolean # REQUIRED includeAudits = $someBoolean # REQUIRED includeEvents = $someBoolean # REQUIRED eventDigestConfig = @{ # OPTIONAL objectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL activityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL activityType = @( $someString ) # OPTIONAL auditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL activitySeverity = @( $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values. ) # OPTIONAL clusters = @( $someString ) # OPTIONAL emailAddresses = @( $someString ) } # REQUIRED recipientUserId = $someString # REQUIRED clusterUuids = @( $someString ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the CreateGuestCredential operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CreateGuestCredential $query = New-RscMutationMisc -CreateGuestCredential # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED definition = @{ # OPTIONAL domain = $someString # OPTIONAL description = $someString # OPTIONAL baseGuestCredential = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateGuestCredentialReply </code> </example> <example> Runs the CreateLegalHold operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CreateLegalHold $query = New-RscMutationMisc -CreateLegalHold # REQUIRED $query.Var.input = @{ # OPTIONAL snapshotIds = @( $someString ) # OPTIONAL holdConfig = @{ # OPTIONAL shouldHoldInPlace = $someBoolean } # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateLegalHoldReply </code> </example> <example> Runs the CreateOnDemandVolumeGroupBackup operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CreateOnDemandVolumeGroupBackup $query = New-RscMutationMisc -CreateOnDemandVolumeGroupBackup # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL volumeIdsIncludedInSnapshot = @( $someString ) # OPTIONAL baseOnDemandSnapshotConfig = @{ # OPTIONAL slaId = $someString } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateVappsInstantRecovery operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: CreateVappsInstantRecovery $query = New-RscMutationMisc -CreateVappsInstantRecovery # REQUIRED $query.Var.input = @{ # REQUIRED inputs = @( @{ # REQUIRED config = @{ # OPTIONAL shouldPowerOnVmsAfterRecovery = $someBoolean # REQUIRED vmsToRestore = @( @{ # OPTIONAL storagePolicyId = $someString # REQUIRED name = $someString # REQUIRED networkConnections = @( @{ # OPTIONAL ipAddress = $someString # OPTIONAL macAddress = $someString # OPTIONAL vappNetworkName = $someString # OPTIONAL networkAdapterType = $someString # REQUIRED addressingMode = $someVappVmIpAddressingMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.VappVmIpAddressingMode]) for enum values. # REQUIRED isConnected = $someBoolean # REQUIRED nicIndex = $someInt } ) # REQUIRED vcdMoid = $someString } ) } # REQUIRED snapshotId = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateVappsInstantRecoveryReply </code> </example> <example> Runs the DeactivateCustomAnalyzer operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeactivateCustomAnalyzer $query = New-RscMutationMisc -DeactivateCustomAnalyzer # REQUIRED $query.Var.analyzerId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteAdGroupsFromHierarchy operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeleteAdGroupsFromHierarchy $query = New-RscMutationMisc -DeleteAdGroupsFromHierarchy # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED groupIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the DeleteDistributionListDigestBatch operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeleteDistributionListDigestBatch $query = New-RscMutationMisc -DeleteDistributionListDigestBatch # REQUIRED $query.Var.input = @{ # REQUIRED digestIds = @( $someInt ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteEventDigest operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeleteEventDigest $query = New-RscMutationMisc -DeleteEventDigest # REQUIRED $query.Var.input = @{ # REQUIRED recipientUserIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteGuestCredentialById operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeleteGuestCredentialById $query = New-RscMutationMisc -DeleteGuestCredentialById # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DeleteIntelFeed operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeleteIntelFeed $query = New-RscMutationMisc -DeleteIntelFeed # REQUIRED $query.Var.input = @{ # OPTIONAL providerId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteVolumeGroupMount operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeleteVolumeGroupMount $query = New-RscMutationMisc -DeleteVolumeGroupMount # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeregisterPrivateContainerRegistry operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DeregisterPrivateContainerRegistry $query = New-RscMutationMisc -DeregisterPrivateContainerRegistry # REQUIRED $query.Var.input = @{ # REQUIRED exocomputeAccountId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DisableSupportUserAccess operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DisableSupportUserAccess $query = New-RscMutationMisc -DisableSupportUserAccess # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someInt # OPTIONAL impersonatedUserId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DissolveLegalHold operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: DissolveLegalHold $query = New-RscMutationMisc -DissolveLegalHold # REQUIRED $query.Var.input = @{ # OPTIONAL snapshotIds = @( $someString ) # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DissolveLegalHoldReply </code> </example> <example> Runs the EnableAutomaticFmdUpload operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: EnableAutomaticFmdUpload $query = New-RscMutationMisc -EnableAutomaticFmdUpload # REQUIRED $query.Var.input = @{ # REQUIRED clusterId = $someString # REQUIRED enabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: EnableAutomaticFmdUploadReply </code> </example> <example> Runs the EnableDisableAppConsistency operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: EnableDisableAppConsistency $query = New-RscMutationMisc -EnableDisableAppConsistency # REQUIRED $query.Var.input = @{ # REQUIRED workloadIds = @( $someString ) # REQUIRED enable = $someBoolean # REQUIRED objectType = $someCloudNativeVmAppConsistentObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeVmAppConsistentObjectType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: EnableDisableAppConsistencyReply </code> </example> <example> Runs the EnableSupportUserAccess operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: EnableSupportUserAccess $query = New-RscMutationMisc -EnableSupportUserAccess # REQUIRED $query.Var.input = @{ # OPTIONAL impersonatedUserId = $someString # OPTIONAL ticketNumber = $someString # OPTIONAL durationInHours = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ExcludeVmDisks operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ExcludeVmDisks $query = New-RscMutationMisc -ExcludeVmDisks # REQUIRED $query.Var.input = @( @{ # REQUIRED virtualDiskFid = $someString # REQUIRED excludeFromSnapshots = $someBoolean } ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the ExpireSnoozedDirectories operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ExpireSnoozedDirectories $query = New-RscMutationMisc -ExpireSnoozedDirectories # REQUIRED $query.Var.input = @{ # OPTIONAL directories = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ExpireSnoozedDirectoriesReply </code> </example> <example> Runs the GenerateConfigProtectionRestoreForm operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: GenerateConfigProtectionRestoreForm $query = New-RscMutationMisc -GenerateConfigProtectionRestoreForm # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED restoreFormRequest = @{ # REQUIRED backupFileName = $someString # REQUIRED encryptionPassword = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GenerateConfigProtectionRestoreFormReply </code> </example> <example> Runs the GenerateSupportBundle operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: GenerateSupportBundle $query = New-RscMutationMisc -GenerateSupportBundle # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # OPTIONAL definitions = @{ # OPTIONAL eventId = $someString # OPTIONAL requestIds = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the GetDownloadUrl operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: GetDownloadUrl $query = New-RscMutationMisc -GetDownloadUrl # REQUIRED $query.Var.downloadId = $someInt64 # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UserDownloadUrl </code> </example> <example> Runs the HideRevealNasNamespaces operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: HideRevealNasNamespaces $query = New-RscMutationMisc -HideRevealNasNamespaces # REQUIRED $query.Var.input = @{ # REQUIRED hideNasNamespacesRequest = @{ # REQUIRED action = $someHideRevealAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HideRevealAction]) for enum values. # REQUIRED ids = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the InstallIoFilter operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: InstallIoFilter $query = New-RscMutationMisc -InstallIoFilter # REQUIRED $query.Var.input = @{ # REQUIRED fqdnInfo = @{ # REQUIRED fqdn = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the InviteSsoGroup operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: InviteSsoGroup $query = New-RscMutationMisc -InviteSsoGroup # REQUIRED $query.Var.input = @{ # REQUIRED groupName = $someString # REQUIRED roleIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the ListCidrsForComputeSetting operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ListCidrsForComputeSetting $query = New-RscMutationMisc -ListCidrsForComputeSetting # REQUIRED $query.Var.input = @{ # OPTIONAL clusterIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ListCidrsForComputeSettingReply </code> </example> <example> Runs the LockUsersByAdmin operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: LockUsersByAdmin $query = New-RscMutationMisc -LockUsersByAdmin # REQUIRED $query.Var.input = @{ # REQUIRED userIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the LogoutFromRubrikSupportPortal operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: LogoutFromRubrikSupportPortal $query = New-RscMutationMisc -LogoutFromRubrikSupportPortal # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SupportPortalLogoutReply </code> </example> <example> Runs the MakePrimary operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: MakePrimary $query = New-RscMutationMisc -MakePrimary # REQUIRED $query.Var.input = @{ # REQUIRED hosts = @{ # OPTIONAL ids = @( $someString ) # OPTIONAL oldPrimaryClusterUuid = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ManageProtectionForLinkedObjects operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ManageProtectionForLinkedObjects $query = New-RscMutationMisc -ManageProtectionForLinkedObjects # REQUIRED $query.Var.input = @{ # REQUIRED operation = $someManageProtectionForLinkedObjectsOperationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManageProtectionForLinkedObjectsOperationType]) for enum values. # REQUIRED assignSlaReq = @{ # REQUIRED slaDomainAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values. # OPTIONAL slaOptionalId = $someString # REQUIRED objectIds = @( $someString ) # OPTIONAL applicableWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. # OPTIONAL shouldApplyToExistingSnapshots = $someBoolean # OPTIONAL shouldApplyToNonPolicySnapshots = $someBoolean # OPTIONAL existingSnapshotRetention = $someGlobalExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalExistingSnapshotRetention]) for enum values. # OPTIONAL userNote = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the ModifyEventDigestBatch operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ModifyEventDigestBatch $query = New-RscMutationMisc -ModifyEventDigestBatch # REQUIRED $query.Var.input = @{ # REQUIRED digests = @( @{ # OPTIONAL digestId = $someInt # REQUIRED digestName = $someString # REQUIRED frequencyHours = $someInt # REQUIRED isImmediate = $someBoolean # REQUIRED includeAudits = $someBoolean # REQUIRED includeEvents = $someBoolean # REQUIRED eventDigestConfig = @{ # OPTIONAL objectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL activityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL activityType = @( $someString ) # OPTIONAL auditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL activitySeverity = @( $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values. ) # OPTIONAL clusters = @( $someString ) # OPTIONAL emailAddresses = @( $someString ) } # REQUIRED recipientUserId = $someString # REQUIRED clusterUuids = @( $someString ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ModifyIpmi operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ModifyIpmi $query = New-RscMutationMisc -ModifyIpmi # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED updateProperties = @{ # OPTIONAL password = $someString # OPTIONAL access = @{ # OPTIONAL https = $someBoolean # OPTIONAL iKvm = $someBoolean } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ModifyIpmiReply </code> </example> <example> Runs the MountDisk operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: MountDisk $query = New-RscMutationMisc -MountDisk # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED targetWorkloadId = $someString # REQUIRED snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values. # REQUIRED mountDiskIds = @( $someString ) # REQUIRED workloadType = $someCloudNativeObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudNativeObjectType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MountDiskReply </code> </example> <example> Runs the NotificationForGetLicense operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: NotificationForGetLicense $query = New-RscMutationMisc -NotificationForGetLicense # OPTIONAL $query.Var.input = @{ # REQUIRED notificationType = $someGetLicenseNotificationRequest # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GetLicenseNotificationRequest]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: NotificationForGetLicenseReply </code> </example> <example> Runs the RecoverCloudDirectMultiPaths operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RecoverCloudDirectMultiPaths $query = New-RscMutationMisc -RecoverCloudDirectMultiPaths # REQUIRED $query.Var.input = @{ # REQUIRED snapshotFid = $someString # REQUIRED restorePathPairList = @( @{ # REQUIRED srcPath = $someString # REQUIRED dstPath = $someString } ) # OPTIONAL dstExportId = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RecoverCloudDirectPath operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RecoverCloudDirectPath $query = New-RscMutationMisc -RecoverCloudDirectPath # REQUIRED $query.Var.input = @{ # REQUIRED snapshotFid = $someString # REQUIRED srcPath = $someString # OPTIONAL dstPath = $someString # OPTIONAL dstExportId = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RefreshDomain operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RefreshDomain $query = New-RscMutationMisc -RefreshDomain # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RefreshGlobalManagerConnectivityStatus operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RefreshGlobalManagerConnectivityStatus $query = New-RscMutationMisc -RefreshGlobalManagerConnectivityStatus # REQUIRED $query.Var.clusterUuid = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GlobalManagerConnectivity </code> </example> <example> Runs the RemoveDisk operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RemoveDisk $query = New-RscMutationMisc -RemoveDisk # REQUIRED $query.Var.input = @{ # REQUIRED diskId = $someString # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the RemoveInventoryWorkloads operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RemoveInventoryWorkloads $query = New-RscMutationMisc -RemoveInventoryWorkloads # REQUIRED $query.Var.input = @{ # REQUIRED inventoryCards = @( $someInventoryCard # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InventoryCard]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the RemovePrivateEndpointList operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RemovePrivateEndpointList $query = New-RscMutationMisc -RemovePrivateEndpointList # REQUIRED $query.Var.input = @{ # REQUIRED locationId = $someString # REQUIRED privateEndpointId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the RemoveProxyConfig operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RemoveProxyConfig $query = New-RscMutationMisc -RemoveProxyConfig # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the RemoveVlans operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RemoveVlans $query = New-RscMutationMisc -RemoveVlans # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED vlanIds = @( $someInt ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RemoveVlansReply </code> </example> <example> Runs the ReseedLogShippingSecondary operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ReseedLogShippingSecondary $query = New-RscMutationMisc -ReseedLogShippingSecondary # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL mssqlLogShippingTargetStateOptions = @{ # OPTIONAL shouldDisconnectStandbyUsers = $someBoolean # REQUIRED state = $someMssqlLogShippingOkState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingOkState]) for enum values. } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ResetAllOrgUsersPasswords operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ResetAllOrgUsersPasswords $query = New-RscMutationMisc -ResetAllOrgUsersPasswords # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ResetUsersPasswordsWithUserIds operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ResetUsersPasswordsWithUserIds $query = New-RscMutationMisc -ResetUsersPasswordsWithUserIds # REQUIRED $query.Var.input = @{ # REQUIRED userIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ResizeDisk operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ResizeDisk $query = New-RscMutationMisc -ResizeDisk # REQUIRED $query.Var.input = @{ # REQUIRED diskId = $someString # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the ResolveAnomaly operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ResolveAnomaly $query = New-RscMutationMisc -ResolveAnomaly # REQUIRED $query.Var.input = @{ # REQUIRED anomalyType = $someAnomalyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnomalyType]) for enum values. # REQUIRED workloadId = $someString # REQUIRED anomalyId = $someString # OPTIONAL falsePositiveReport = @{ # REQUIRED falsePositiveType = $someAnomalyFalsePositiveType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnomalyFalsePositiveType]) for enum values. # OPTIONAL otherReason = $someString } # OPTIONAL directoriesToSnooze = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ResolveVolumeGroupsConflict operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ResolveVolumeGroupsConflict $query = New-RscMutationMisc -ResolveVolumeGroupsConflict # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the RetryBackup operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RetryBackup $query = New-RscMutationMisc -RetryBackup # REQUIRED $query.Var.backupObjects = @( @{ # OPTIONAL objectFid = $someString # OPTIONAL eventSeriesId = $someString # OPTIONAL monitoringId = $someString } ) # OPTIONAL $query.Var.backupRunConfig = @{ # OPTIONAL runNow = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RetryBackupResp </code> </example> <example> Runs the RetryDownloadPackageJob operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RetryDownloadPackageJob $query = New-RscMutationMisc -RetryDownloadPackageJob # REQUIRED $query.Var.clusterUuid = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DownloadPackageReply </code> </example> <example> Runs the RevokeAllOrgRoles operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RevokeAllOrgRoles $query = New-RscMutationMisc -RevokeAllOrgRoles # REQUIRED $query.Var.input = @{ # OPTIONAL userIds = @( $someString ) # OPTIONAL groupIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the RunCustomAnalyzer operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: RunCustomAnalyzer $query = New-RscMutationMisc -RunCustomAnalyzer # REQUIRED $query.Var.input = @{ # OPTIONAL dictionaryCsv = $someString # OPTIONAL regex = $someString # OPTIONAL content = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RunCustomAnalyzerReply </code> </example> <example> Runs the ScheduleUpgradeBatchJob operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ScheduleUpgradeBatchJob $query = New-RscMutationMisc -ScheduleUpgradeBatchJob # REQUIRED $query.Var.listClusterUuid = @( $someString ) # REQUIRED $query.Var.mode = $someString # REQUIRED $query.Var.action = $someActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActionType]) for enum values. # REQUIRED $query.Var.version = $someString # REQUIRED $query.Var.scheduleAt = $someDateTime # OPTIONAL $query.Var.context_tag = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<UpgradeJobReplyWithUuid> </code> </example> <example> Runs the SetAnalyzerRisks operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetAnalyzerRisks $query = New-RscMutationMisc -SetAnalyzerRisks # REQUIRED $query.Var.input = @{ # REQUIRED risks = @( @{ # OPTIONAL analyzerId = $someString # OPTIONAL risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values. } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SetAnalyzerRisksReply </code> </example> <example> Runs the SetBundleApprovalStatus operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetBundleApprovalStatus $query = New-RscMutationMisc -SetBundleApprovalStatus # REQUIRED $query.Var.input = @{ # REQUIRED bundleVersion = $someString # REQUIRED approvalStatus = $someExoBundleApprovalStatus # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExoBundleApprovalStatus]) for enum values. # OPTIONAL bundleMetadata = @{ # OPTIONAL eksVersion = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the SetCustomerTags operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetCustomerTags $query = New-RscMutationMisc -SetCustomerTags # REQUIRED $query.Var.input = @{ # REQUIRED cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values. # REQUIRED customerTags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } # REQUIRED shouldOverrideResourceTags = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the SetDatastoreFreespaceThresholds operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetDatastoreFreespaceThresholds $query = New-RscMutationMisc -SetDatastoreFreespaceThresholds # REQUIRED $query.Var.input = @{ # REQUIRED thresholds = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED datastoreFreespaceThreshold = @{ # OPTIONAL vmId = $someString # REQUIRED threshold = $someSingle } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SetDatastoreFreespaceThresholdsReply </code> </example> <example> Runs the SetIpWhitelistEnabled operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetIpWhitelistEnabled $query = New-RscMutationMisc -SetIpWhitelistEnabled # REQUIRED $query.Var.enabled = $someBoolean # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the SetMfaSetting operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetMfaSetting $query = New-RscMutationMisc -SetMfaSetting # REQUIRED $query.Var.input = @{ # OPTIONAL isTotpEnforcedGlobal = $someBoolean # OPTIONAL totpReminderHours = $someInt # OPTIONAL mfaRememberHours = $someInt # OPTIONAL passkeyConfig = @{ # REQUIRED passkeysAllowed = $someBoolean # REQUIRED platformPasskeyAllowed = $someBoolean # REQUIRED roamingPasskeyAllowed = $someBoolean # REQUIRED maxPasskeysAllowed = $someInt } # OPTIONAL deletePasskeys = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the SetPrivateContainerRegistry operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetPrivateContainerRegistry $query = New-RscMutationMisc -SetPrivateContainerRegistry # REQUIRED $query.Var.input = @{ # REQUIRED exocomputeAccountId = $someString # REQUIRED registryUrl = $someString # OPTIONAL pcrAwsImagePullDetails = @{ # OPTIONAL awsNativeId = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the SetTotpConfig operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetTotpConfig $query = New-RscMutationMisc -SetTotpConfig # REQUIRED $query.Var.input = @{ # OPTIONAL userId = $someString # OPTIONAL secret = $someString # OPTIONAL otp = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the SetUpgradeType operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetUpgradeType $query = New-RscMutationMisc -SetUpgradeType # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED upgradeType = $someUpgradeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UpgradeType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SetUpgradeTypeReply </code> </example> <example> Runs the SetUserLevelTotpEnforcement operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetUserLevelTotpEnforcement $query = New-RscMutationMisc -SetUserLevelTotpEnforcement # REQUIRED $query.Var.input = @{ # OPTIONAL userIds = @( $someString ) # OPTIONAL isEnforced = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the SetWorkloadAlertSetting operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetWorkloadAlertSetting $query = New-RscMutationMisc -SetWorkloadAlertSetting # REQUIRED $query.Var.input = @{ # OPTIONAL clusterId = $someString # OPTIONAL workloadFid = $someString # OPTIONAL enabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SetWorkloadAlertSettingReply </code> </example> <example> Runs the SetupDisk operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SetupDisk $query = New-RscMutationMisc -SetupDisk # REQUIRED $query.Var.input = @{ # REQUIRED diskId = $someString # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DiskInfo </code> </example> <example> Runs the StartCrawl operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StartCrawl $query = New-RscMutationMisc -StartCrawl # REQUIRED $query.Var.name = $someString # REQUIRED $query.Var.resources = @( @{ # OPTIONAL snappableFid = $someString # OPTIONAL snapshotFid = $someString } ) # REQUIRED $query.Var.analyzerGroups = @( @{ # OPTIONAL groupType = $someAnalyzerGroupTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerGroupTypeEnum]) for enum values. # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL analyzers = @( @{ # OPTIONAL analyzerType = $someAnalyzerTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerTypeEnum]) for enum values. # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL dictionaryCsv = $someString # OPTIONAL dictionary = @( $someString ) # OPTIONAL regex = $someString # OPTIONAL analyzerRiskInstance = @{ # OPTIONAL analyzerId = $someString # OPTIONAL riskVersion = $someInt # OPTIONAL risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values. } # OPTIONAL tagId = $someInt # OPTIONAL risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values. } ) } ) # OPTIONAL $query.Var.extWhiteList = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: StartCrawlReply </code> </example> <example> Runs the StartDownloadPackageBatchJob operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StartDownloadPackageBatchJob $query = New-RscMutationMisc -StartDownloadPackageBatchJob # REQUIRED $query.Var.listClusterUuid = @( $someString ) # OPTIONAL $query.Var.downloadVersion = $someString # REQUIRED $query.Var.packageUrl = $someString # REQUIRED $query.Var.md5checksum = $someString # OPTIONAL $query.Var.size = $someInt64 # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<DownloadPackageReplyWithUuid> </code> </example> <example> Runs the StartExportRdsInstanceJob operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StartExportRdsInstanceJob $query = New-RscMutationMisc -StartExportRdsInstanceJob # REQUIRED $query.Var.input = @{ # REQUIRED rdsInstanceId = $someString # REQUIRED isPointInTime = $someBoolean # OPTIONAL snapshotId = $someString # OPTIONAL exportTime = $someDateTime # REQUIRED dbInstanceName = $someString # REQUIRED destinationAwsNativeAccountId = $someString # REQUIRED destinationRegionNativeId = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values. # REQUIRED dbInstanceClass = $someAwsNativeRdsDbInstanceClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsDbInstanceClass]) for enum values. # OPTIONAL databaseInstanceClass = $someString # OPTIONAL primaryAz = $someString # REQUIRED port = $someInt64 # OPTIONAL optionGroupName = $someString # OPTIONAL parameterGroupName = $someString # OPTIONAL subnetGroupName = $someString # OPTIONAL storageType = $someAwsNativeRdsStorageType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRdsStorageType]) for enum values. # OPTIONAL securityGroupIds = @( $someString ) # OPTIONAL iops = $someInt # REQUIRED isPubliclyAccessible = $someBoolean # REQUIRED shouldExportTags = $someBoolean # REQUIRED isMultiAz = $someBoolean # OPTIONAL kmsKeyId = $someString # OPTIONAL subnetIds = @( $someString ) # OPTIONAL snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values. # OPTIONAL dbClusterName = $someString # OPTIONAL dbClusterParameterGroupName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartPeriodicUpgradePrechecksOnDemandJob operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StartPeriodicUpgradePrechecksOnDemandJob $query = New-RscMutationMisc -StartPeriodicUpgradePrechecksOnDemandJob # REQUIRED $query.Var.clusterUuid = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PrechecksJobReply </code> </example> <example> Runs the StartUpgradeBatchJob operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StartUpgradeBatchJob $query = New-RscMutationMisc -StartUpgradeBatchJob # REQUIRED $query.Var.listClusterUuid = @( $someString ) # REQUIRED $query.Var.mode = $someString # REQUIRED $query.Var.action = $someActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActionType]) for enum values. # REQUIRED $query.Var.version = $someString # OPTIONAL $query.Var.context_tag = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<UpgradeJobReplyWithUuid> </code> </example> <example> Runs the StartVolumeGroupMount operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StartVolumeGroupMount $query = New-RscMutationMisc -StartVolumeGroupMount # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL smbDomainName = $someString # OPTIONAL smbValidIps = @( $someString ) # OPTIONAL smbValidUsers = @( $someString ) # OPTIONAL targetHostId = $someString # REQUIRED volumeConfigs = @( @{ # OPTIONAL mountPointOnHost = $someString # REQUIRED volumeId = $someString } ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the StopJobInstance operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StopJobInstance $query = New-RscMutationMisc -StopJobInstance # REQUIRED $query.Var.input = @{ # OPTIONAL jobInstanceId = $someString # OPTIONAL eventSeriesId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: StopJobInstanceReply </code> </example> <example> Runs the StopJobInstanceFromEventSeries operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: StopJobInstanceFromEventSeries $query = New-RscMutationMisc -StopJobInstanceFromEventSeries # REQUIRED $query.Var.input = @{ # REQUIRED eventSeriesId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the SupportPortalLogin operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SupportPortalLogin $query = New-RscMutationMisc -SupportPortalLogin # REQUIRED $query.Var.input = @{ # OPTIONAL account = $someString # OPTIONAL hostname = $someString # OPTIONAL organizationId = $someString # REQUIRED username = $someString # REQUIRED password = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SupportPortalLoginReply </code> </example> <example> Runs the SwitchProductToOnboardingMode operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: SwitchProductToOnboardingMode $query = New-RscMutationMisc -SwitchProductToOnboardingMode # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED workloadType = $someM365DashboardWorkloadType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.M365DashboardWorkloadType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the TriggerCloudComputeConnectivityCheck operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: TriggerCloudComputeConnectivityCheck $query = New-RscMutationMisc -TriggerCloudComputeConnectivityCheck # REQUIRED $query.Var.input = @{ # OPTIONAL shouldCheckCloudConnectivityForCloudOut = $someBoolean # REQUIRED id = $someString # REQUIRED shouldCheckCloudConnectivityForCloudOn = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the TriggerExocomputeHealthCheck operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: TriggerExocomputeHealthCheck $query = New-RscMutationMisc -TriggerExocomputeHealthCheck # REQUIRED $query.Var.input = @{ # REQUIRED cloudVendor = $someCloudVendor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudVendor]) for enum values. # REQUIRED exocomputeConfigId = $someString # OPTIONAL nodeType = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TriggerExocomputeHealthCheckReply </code> </example> <example> Runs the UninstallIoFilter operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UninstallIoFilter $query = New-RscMutationMisc -UninstallIoFilter # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the UnlockUsersByAdmin operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UnlockUsersByAdmin $query = New-RscMutationMisc -UnlockUsersByAdmin # REQUIRED $query.Var.input = @{ # REQUIRED userIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UnmountDisk operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UnmountDisk $query = New-RscMutationMisc -UnmountDisk # REQUIRED $query.Var.input = @{ # REQUIRED liveMountId = $someInt64 # REQUIRED mountIds = @( $someInt64 ) # REQUIRED targetWorkloadId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateAccountOwner operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateAccountOwner $query = New-RscMutationMisc -UpdateAccountOwner # REQUIRED $query.Var.userId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the UpdateAdGroup operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateAdGroup $query = New-RscMutationMisc -UpdateAdGroup # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED groupId = $someString # REQUIRED updatedDisplayName = $someString # REQUIRED updatedGroupFilterAttributes = @( @{ # OPTIONAL filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values. # OPTIONAL attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values. # OPTIONAL attributeKey = $someString # OPTIONAL attributeValue = $someString # OPTIONAL dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values. } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateAgentDeploymentSetting operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateAgentDeploymentSetting $query = New-RscMutationMisc -UpdateAgentDeploymentSetting # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED settings = @{ # REQUIRED isAutomatic = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AgentDeploymentSettings </code> </example> <example> Runs the UpdateAgentDeploymentSettingInBatch operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateAgentDeploymentSettingInBatch $query = New-RscMutationMisc -UpdateAgentDeploymentSettingInBatch # REQUIRED $query.Var.input = @{ # REQUIRED requests = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED settings = @{ # REQUIRED isAutomatic = $someBoolean } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateAgentDeploymentSettingInBatchReply </code> </example> <example> Runs the UpdateAuthDomainUsersHiddenStatus operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateAuthDomainUsersHiddenStatus $query = New-RscMutationMisc -UpdateAuthDomainUsersHiddenStatus # REQUIRED $query.Var.input = @{ # REQUIRED userIds = @( $someString ) # REQUIRED isHidden = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateBackupThrottleSetting operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateBackupThrottleSetting $query = New-RscMutationMisc -UpdateBackupThrottleSetting # REQUIRED $query.Var.input = @{ # REQUIRED requests = @( @{ # OPTIONAL clusterUuid = $someString # OPTIONAL enableThrottling = $someBoolean # OPTIONAL vmwareThrottlingSettings = @{ # OPTIONAL ioLatencyThreshold = $someInt # OPTIONAL datastoreIoLatencyThreshold = $someInt # OPTIONAL cpuUtilizationThreshold = $someInt } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateBackupThrottleSettingReply </code> </example> <example> Runs the UpdateBadDiskLedStatus operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateBadDiskLedStatus $query = New-RscMutationMisc -UpdateBadDiskLedStatus # REQUIRED $query.Var.input = @{ # OPTIONAL diskSerial = $someString # OPTIONAL turnOff = $someBoolean # REQUIRED id = $someString # REQUIRED nodeId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateBadDiskLedStatusReply </code> </example> <example> Runs the UpdateConfiguredGroup operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateConfiguredGroup $query = New-RscMutationMisc -UpdateConfiguredGroup # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED groupId = $someString # OPTIONAL updatedDisplayName = $someString # OPTIONAL updatedWildcard = $someString # REQUIRED updatedPdls = @( $someString ) # OPTIONAL updatedGroupFilterAttributes = @( @{ # OPTIONAL filterOpType = $someJoinOpType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.JoinOpType]) for enum values. # OPTIONAL attributeType = $someAttributeType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeType]) for enum values. # OPTIONAL attributeKey = $someString # OPTIONAL attributeValue = $someString # OPTIONAL dataType = $someAttributeDataType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AttributeDataType]) for enum values. } ) # REQUIRED performArchival = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateCustomAnalyzer operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateCustomAnalyzer $query = New-RscMutationMisc -UpdateCustomAnalyzer # REQUIRED $query.Var.input = @{ # OPTIONAL analyzerType = $someAnalyzerTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AnalyzerTypeEnum]) for enum values. # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL dictionaryCsv = $someString # OPTIONAL dictionary = @( $someString ) # OPTIONAL regex = $someString # OPTIONAL analyzerRiskInstance = @{ # OPTIONAL analyzerId = $someString # OPTIONAL riskVersion = $someInt # OPTIONAL risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values. } # OPTIONAL tagId = $someInt # OPTIONAL risk = $someRiskLevelType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RiskLevelType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Analyzer </code> </example> <example> Runs the UpdateCustomIntelFeed operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateCustomIntelFeed $query = New-RscMutationMisc -UpdateCustomIntelFeed # REQUIRED $query.Var.input = @{ # OPTIONAL user = $someString # OPTIONAL name = @{ # OPTIONAL name = $someString } # OPTIONAL providerId = $someString # OPTIONAL description = @{ # OPTIONAL description = $someString } # OPTIONAL entriesToAdd = @( @{ # OPTIONAL iocString = $someString # OPTIONAL threatFamily = $someString # REQUIRED iocType = $someThreatFeedType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatFeedType]) for enum values. } ) # OPTIONAL entriesToRemove = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateCustomerAppPermissions operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateCustomerAppPermissions $query = New-RscMutationMisc -UpdateCustomerAppPermissions # REQUIRED $query.Var.input = @{ # REQUIRED appPermissions = @( $someAzureAppPermission # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureAppPermission]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateCustomerAppPermissionsReply </code> </example> <example> Runs the UpdateDistributionListDigest operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateDistributionListDigest $query = New-RscMutationMisc -UpdateDistributionListDigest # REQUIRED $query.Var.input = @{ # OPTIONAL digestId = $someInt # OPTIONAL digestName = $someString # OPTIONAL frequencyHours = $someInt # OPTIONAL isImmediate = $someBoolean # OPTIONAL includeAudits = $someBoolean # OPTIONAL includeEvents = $someBoolean # REQUIRED eventDigestConfig = @{ # OPTIONAL objectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL activityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL activityType = @( $someString ) # OPTIONAL auditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL activitySeverity = @( $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values. ) # OPTIONAL clusters = @( $someString ) # OPTIONAL emailAddresses = @( $someString ) } # REQUIRED recipientUserIds = @( $someString ) # OPTIONAL clusterUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateDistributionListDigestReply </code> </example> <example> Runs the UpdateDnsServersAndSearchDomains operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateDnsServersAndSearchDomains $query = New-RscMutationMisc -UpdateDnsServersAndSearchDomains # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED servers = @( $someString ) # REQUIRED domains = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the UpdateEventDigest operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateEventDigest $query = New-RscMutationMisc -UpdateEventDigest # REQUIRED $query.Var.input = @{ # OPTIONAL digestId = $someInt # OPTIONAL digestName = $someString # OPTIONAL frequencyHours = $someInt # OPTIONAL isImmediate = $someBoolean # OPTIONAL includeAudits = $someBoolean # OPTIONAL includeEvents = $someBoolean # REQUIRED eventDigestConfig = @{ # OPTIONAL objectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL activityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL activityType = @( $someString ) # OPTIONAL auditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL activitySeverity = @( $someActivitySeverityEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivitySeverityEnum]) for enum values. ) # OPTIONAL clusters = @( $someString ) # OPTIONAL emailAddresses = @( $someString ) } # REQUIRED recipientUserIds = @( $someString ) # OPTIONAL clusterUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateEventDigestReply </code> </example> <example> Runs the UpdateFloatingIps operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateFloatingIps $query = New-RscMutationMisc -UpdateFloatingIps # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED newClusterIps = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateFloatingIpsReply </code> </example> <example> Runs the UpdateGuestCredential operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateGuestCredential $query = New-RscMutationMisc -UpdateGuestCredential # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED definition = @{ # OPTIONAL domain = $someString # OPTIONAL description = $someString # OPTIONAL baseGuestCredential = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateGuestCredentialReply </code> </example> <example> Runs the UpdateInsightState operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateInsightState $query = New-RscMutationMisc -UpdateInsightState # REQUIRED $query.Var.input = @{ # OPTIONAL insightId = $someString # OPTIONAL isDismissed = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateInsightStateReply </code> </example> <example> Runs the UpdateIocStatus operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateIocStatus $query = New-RscMutationMisc -UpdateIocStatus # REQUIRED $query.Var.input = @( @{ # REQUIRED operation = $someIocOperation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.IocOperation]) for enum values. # OPTIONAL iocHashOnly = @{ # REQUIRED iocHashHex = $someString } # OPTIONAL iocHashWithProvider = @{ # REQUIRED iocHashHex = $someString # REQUIRED providerId = $someString } # OPTIONAL iocProviderWithThreatFeedType = @{ # REQUIRED providerId = $someString # REQUIRED type = $someThreatFeedType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ThreatFeedType]) for enum values. } } ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateIpWhitelist operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateIpWhitelist $query = New-RscMutationMisc -UpdateIpWhitelist # REQUIRED $query.Var.whitelistMode = $someWhitelistModeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WhitelistModeEnum]) for enum values. # REQUIRED $query.Var.ipCidrs = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the UpdateLambdaSettings operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateLambdaSettings $query = New-RscMutationMisc -UpdateLambdaSettings # OPTIONAL $query.Var.anomalyThreshold = $someSingle # OPTIONAL $query.Var.ransomwareThreshold = $someSingle # OPTIONAL $query.Var.isAnomalyAlertEnabled = $someBoolean # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: LambdaSettings </code> </example> <example> Runs the UpdateLockoutConfig operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateLockoutConfig $query = New-RscMutationMisc -UpdateLockoutConfig # REQUIRED $query.Var.input = @{ # OPTIONAL loginAttemptsLimit = $someInt # OPTIONAL selfServiceTokenValidityInMins = $someInt # OPTIONAL selfServiceAttemptsLimit = $someInt # OPTIONAL isSelfServiceEnabled = $someBoolean # OPTIONAL accountAutoUnlockDurationInMins = $someInt # OPTIONAL isBruteForceLockoutEnabled = $someBoolean # OPTIONAL isAutoUnlockFeatureEnabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateLockoutConfigReply </code> </example> <example> Runs the UpdateManagedIdentities operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateManagedIdentities $query = New-RscMutationMisc -UpdateManagedIdentities # REQUIRED $query.Var.input = @{ # REQUIRED cloudAccountId = $someString # REQUIRED clusterUuid = $someString # OPTIONAL managedIdentity = @{ # OPTIONAL name = $someString # OPTIONAL clientId = $someString # OPTIONAL resourceGroup = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateManagedIdentitiesReply </code> </example> <example> Runs the UpdateNetworkThrottle operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateNetworkThrottle $query = New-RscMutationMisc -UpdateNetworkThrottle # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString # REQUIRED throttleUpdate = @{ # OPTIONAL defaultThrottleLimit = $someSingle # OPTIONAL isEnabled = $someBoolean # OPTIONAL networkInterface = $someString # OPTIONAL archivalThrottlePort = $someInt # OPTIONAL scheduledThrottles = @( @{ # REQUIRED daysOfWeek = @( $someInt ) # REQUIRED endTime = $someInt64 # REQUIRED startTime = $someInt64 # REQUIRED throttleLimit = $someSingle } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateNetworkThrottleReply </code> </example> <example> Runs the UpdateProxyConfig operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateProxyConfig $query = New-RscMutationMisc -UpdateProxyConfig # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED proxy = @{ # OPTIONAL password = $someString # OPTIONAL port = $someInt # OPTIONAL username = $someString # REQUIRED host = $someString # REQUIRED protocol = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateProxyConfigReply </code> </example> <example> Runs the UpdateRoleAssignments operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateRoleAssignments $query = New-RscMutationMisc -UpdateRoleAssignments # OPTIONAL $query.Var.userIds = @( $someString ) # OPTIONAL $query.Var.groupIds = @( $someString ) # REQUIRED $query.Var.roleIds = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the UpdateSupportUserAccess operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateSupportUserAccess $query = New-RscMutationMisc -UpdateSupportUserAccess # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someInt # OPTIONAL impersonatedUserId = $someString # OPTIONAL newDurationInHours = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateTunnelStatus operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateTunnelStatus $query = New-RscMutationMisc -UpdateTunnelStatus # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # OPTIONAL inactivityTimeoutInSeconds = $someInt64 # REQUIRED isTunnelEnabled = $someBoolean } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateTunnelStatusReply </code> </example> <example> Runs the UpdateVlan operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateVlan $query = New-RscMutationMisc -UpdateVlan # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED vlanInfo = @{ # OPTIONAL gateway = $someString # OPTIONAL alias = $someString # REQUIRED interfaces = @( @{ # REQUIRED ip = $someString # REQUIRED node = $someString } ) # REQUIRED netmask = $someString # REQUIRED vlan = $someInt } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateVolumeGroup operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateVolumeGroup $query = New-RscMutationMisc -UpdateVolumeGroup # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED patchProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL isPaused = $someBoolean # OPTIONAL volumeIdsIncludedInSnapshots = @( $someString ) # OPTIONAL forceFull = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateVolumeGroupReply </code> </example> <example> Runs the UpdateWhitelistedAnalyzers operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpdateWhitelistedAnalyzers $query = New-RscMutationMisc -UpdateWhitelistedAnalyzers # REQUIRED $query.Var.stdPath = $someString # REQUIRED $query.Var.snappableFid = $someString # REQUIRED $query.Var.snapshotFid = $someString # REQUIRED $query.Var.analyzerIds = @( $someString ) # REQUIRED $query.Var.runAsync = $someBoolean # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpgradeIoFilter operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpgradeIoFilter $query = New-RscMutationMisc -UpgradeIoFilter # REQUIRED $query.Var.input = @{ # REQUIRED fqdnInfo = @{ # REQUIRED fqdn = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the UpgradeToRsc operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: UpgradeToRsc $query = New-RscMutationMisc -UpgradeToRsc # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the ValidateAndSaveCustomerKmsInfo operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: ValidateAndSaveCustomerKmsInfo $query = New-RscMutationMisc -ValidateAndSaveCustomerKmsInfo # REQUIRED $query.Var.input = @{ # OPTIONAL kmsSpec = @{ # OPTIONAL cloudType = $someO365AzureCloudType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365AzureCloudType]) for enum values. # OPTIONAL tenantId = $someString # OPTIONAL kmsId = $someString # OPTIONAL appId = $someString # OPTIONAL appSecret = $someString # OPTIONAL keyName = $someString # OPTIONAL kekNameColossus = $someString } # REQUIRED appSecret = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ValidateAndSaveCustomerKmsInfoReply </code> </example> <example> Runs the VmMakePrimary operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: VmMakePrimary $query = New-RscMutationMisc -VmMakePrimary # REQUIRED $query.Var.input = @{ # REQUIRED ids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the WarmSearchCache operation of the 'Miscellaneous' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Misc # API Operation: WarmSearchCache $query = New-RscMutationMisc -WarmSearchCache # REQUIRED $query.Var.input = @{ # REQUIRED workloadFid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationMongo"> <summary> Create a new RscQuery object for any of the 6 operations in the 'Mongo' API domain: AddSource, DeleteSource, DiscoverSource, PatchSource, RecoverSource, or RetryAddSource. </summary> <description> 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. </description> <example> Runs the AddSource operation of the 'Mongo' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mongo # API Operation: AddSource $query = New-RscMutationMongo -AddSource # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED mongoSourceAddRequestConfig = @{ # OPTIONAL caCertfilePath = $someString # OPTIONAL ignoreSecondaries = @( $someString ) # OPTIONAL sourceDriverPassword = $someString # OPTIONAL sourceDriverUser = $someString # OPTIONAL sslKeyfilePath = $someString # OPTIONAL sslCertfilePath = $someString # REQUIRED mongoType = $someMongoType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoType]) for enum values. # OPTIONAL sourceAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values. # OPTIONAL sslCertificateRequired = $someMongoSslCertificateRequirement # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoSslCertificateRequirement]) for enum values. # REQUIRED mongoClientHosts = @( @{ # REQUIRED configurationPort = $someInt # REQUIRED hostId = $someString } ) # REQUIRED sourceName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddMongoSourceReply </code> </example> <example> Runs the DeleteSource operation of the 'Mongo' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mongo # API Operation: DeleteSource $query = New-RscMutationMongo -DeleteSource # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DiscoverSource operation of the 'Mongo' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mongo # API Operation: DiscoverSource $query = New-RscMutationMongo -DiscoverSource # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the PatchSource operation of the 'Mongo' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mongo # API Operation: PatchSource $query = New-RscMutationMongo -PatchSource # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED mongoSourcePatchRequestConfig = @{ # OPTIONAL caCertfilePath = $someString # OPTIONAL ignoreSecondaries = @( $someString ) # OPTIONAL sourceDriverPassword = $someString # OPTIONAL sourceDriverUser = $someString # OPTIONAL sslKeyfilePath = $someString # OPTIONAL sslCertfilePath = $someString # OPTIONAL sourceAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values. # OPTIONAL sslCertificateRequired = $someMongoSslCertificateRequirement # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoSslCertificateRequirement]) for enum values. } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RecoverSource operation of the 'Mongo' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mongo # API Operation: RecoverSource $query = New-RscMutationMongo -RecoverSource # REQUIRED $query.Var.input = @{ # REQUIRED input = @{ # OPTIONAL prefix = $someString # OPTIONAL restoreDbPassword = $someString # OPTIONAL restoreDbUsername = $someString # OPTIONAL shouldDropExistingCollection = $someBoolean # OPTIONAL sourceCollectionIds = @( $someString ) # OPTIONAL sourceDatabaseIds = @( $someString ) # OPTIONAL targetCollectionName = $someString # OPTIONAL targetDatabaseName = $someString # OPTIONAL versionTime = $someDateTime # OPTIONAL restoreThrottleInBytesPerSecond = $someInt64 # OPTIONAL isRestoreWithIndex = $someBoolean # OPTIONAL targetAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values. # REQUIRED sourceMongoClusterId = $someString # REQUIRED targetMongoClusterId = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RetryAddSource operation of the 'Mongo' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mongo # API Operation: RetryAddSource $query = New-RscMutationMongo -RetryAddSource # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED mongoSourceRequestConfig = @{ # OPTIONAL caCertfilePath = $someString # OPTIONAL ignoreSecondaries = @( $someString ) # OPTIONAL sourceDriverPassword = $someString # OPTIONAL sourceDriverUser = $someString # OPTIONAL sslKeyfilePath = $someString # OPTIONAL sslCertfilePath = $someString # REQUIRED mongoType = $someMongoType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoType]) for enum values. # OPTIONAL sourceAuthenticationType = $someMongoAuthenticationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoAuthenticationType]) for enum values. # OPTIONAL sslCertificateRequired = $someMongoSslCertificateRequirement # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MongoSslCertificateRequirement]) for enum values. # REQUIRED mongoClientHosts = @( @{ # REQUIRED configurationPort = $someInt # REQUIRED hostId = $someString } ) # REQUIRED sourceName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationMongoDb"> <summary> Create a new RscQuery object for any of the 6 operations in the 'Mongo DB' API domain: AssignSlaToCollection, BulkDeleteSources, CreateSource, DeleteSource, RecoverSource, or UpdateSource. </summary> <description> 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. </description> <example> Runs the AssignSlaToCollection operation of the 'Mongo DB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: MongoDb # API Operation: AssignSlaToCollection $query = New-RscMutationMongoDb -AssignSlaToCollection # REQUIRED $query.Var.input = @{ # REQUIRED input = @{ # REQUIRED ids = @( $someString ) # REQUIRED slaId = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the BulkDeleteSources operation of the 'Mongo DB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: MongoDb # API Operation: BulkDeleteSources $query = New-RscMutationMongoDb -BulkDeleteSources # REQUIRED $query.Var.input = @{ # OPTIONAL sourceType = $someV2BulkDeleteMosaicSourcesRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2BulkDeleteMosaicSourcesRequestSourceType]) for enum values. # REQUIRED clusterUuid = $someString # REQUIRED sourceData = @{ # OPTIONAL async = $someBoolean # REQUIRED sourceNames = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the CreateSource operation of the 'Mongo DB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: MongoDb # API Operation: CreateSource $query = New-RscMutationMongoDb -CreateSource # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED sourceData = @{ # OPTIONAL async = $someBoolean # OPTIONAL cassandraYaml = @( $someString ) # OPTIONAL dseYaml = @( $someString ) # OPTIONAL enableSsl = $someBoolean # OPTIONAL httpsCertificate = $someString # OPTIONAL ignoreSecondaries = @( $someString ) # OPTIONAL jmxPassword = $someString # OPTIONAL jmxUser = $someString # OPTIONAL parameterEncoded = $someBoolean # OPTIONAL sourceAuthKey = $someString # OPTIONAL sourceAuthKeyfile = $someString # OPTIONAL sourceAuthPassphrase = $someString # OPTIONAL sourceDriverPassword = $someString # OPTIONAL sourceDriverUser = $someString # OPTIONAL sourceHttpsPort = $someString # OPTIONAL sourcePassword = $someString # OPTIONAL sourcePort = $someString # OPTIONAL sourceRpcPort = $someString # OPTIONAL sourceSshPort = $someString # OPTIONAL sourceUser = $someString # OPTIONAL sslCaCerts = $someString # OPTIONAL sslCertfile = $someString # OPTIONAL sslKeyfile = $someString # REQUIRED sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values. # OPTIONAL sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values. # REQUIRED sourceIp = @( $someString ) # REQUIRED sourceName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the DeleteSource operation of the 'Mongo DB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: MongoDb # API Operation: DeleteSource $query = New-RscMutationMongoDb -DeleteSource # REQUIRED $query.Var.input = @{ # OPTIONAL sourceType = $someV2DeleteMosaicSourceRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.V2DeleteMosaicSourceRequestSourceType]) for enum values. # REQUIRED clusterUuid = $someString # REQUIRED sourceName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the RecoverSource operation of the 'Mongo DB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: MongoDb # API Operation: RecoverSource $query = New-RscMutationMongoDb -RecoverSource # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED recoveryData = @{ # OPTIONAL destinationSourceName = $someString # OPTIONAL keyspaceConfig = $someString # OPTIONAL maxDiskUsage = $someString # OPTIONAL restoreDbUserPwd = $someString # OPTIONAL restoreDbUsername = $someString # OPTIONAL startTimestamp = $someInt # OPTIONAL targetEncryptionKey = $someString # OPTIONAL targetQuery = $someString # OPTIONAL sourceType = $someMosaicRetrieveRequestSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicRetrieveRequestSourceType]) for enum values. # OPTIONAL destinationManagementObjects = @{ # OPTIONAL databases = @( @{ # OPTIONAL dbName = $someString # OPTIONAL tables = @( $someString ) } ) } # REQUIRED destinationPath = $someString # REQUIRED managementObjects = @{ # OPTIONAL databases = @( @{ # OPTIONAL dbName = $someString # OPTIONAL tables = @( $someString ) } ) } # REQUIRED parameterEncoded = $someBoolean # REQUIRED sourceName = $someString # REQUIRED versionTime = $someInt } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the UpdateSource operation of the 'Mongo DB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: MongoDb # API Operation: UpdateSource $query = New-RscMutationMongoDb -UpdateSource # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED sourceData = @{ # OPTIONAL async = $someBoolean # OPTIONAL cassandraYaml = @( $someString ) # OPTIONAL dseYaml = @( $someString ) # OPTIONAL enableSsl = $someBoolean # OPTIONAL httpsCertificate = $someString # OPTIONAL ignoreSecondaries = @( $someString ) # OPTIONAL jmxPassword = $someString # OPTIONAL jmxUser = $someString # OPTIONAL parameterEncoded = $someBoolean # OPTIONAL sourceAuthKey = $someString # OPTIONAL sourceAuthKeyfile = $someString # OPTIONAL sourceAuthPassphrase = $someString # OPTIONAL sourceDriverPassword = $someString # OPTIONAL sourceDriverUser = $someString # OPTIONAL sourceHttpsPort = $someString # OPTIONAL sourcePassword = $someString # OPTIONAL sourcePort = $someString # OPTIONAL sourceRpcPort = $someString # OPTIONAL sourceSshPort = $someString # OPTIONAL sourceUser = $someString # OPTIONAL sslCaCerts = $someString # OPTIONAL sslCertfile = $someString # OPTIONAL sslKeyfile = $someString # REQUIRED sourceType = $someSourceSourceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSourceType]) for enum values. # OPTIONAL sslCertReqs = $someSourceSslCertReqs # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SourceSslCertReqs]) for enum values. # REQUIRED sourceIp = @( $someString ) # REQUIRED sourceName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationMosaic"> <summary> Create a new RscQuery object for any of the 3 operations in the 'Mosaic' API domain: AddStore, DeleteStore, or UpdateStore. </summary> <description> 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. </description> <example> Runs the AddStore operation of the 'Mosaic' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mosaic # API Operation: AddStore $query = New-RscMutationMosaic -AddStore # REQUIRED $query.Var.input = @{ # REQUIRED addStoreData = @{ # OPTIONAL accessKeyId = $someString # OPTIONAL nfsServer = $someString # OPTIONAL nfsServerMountPath = $someString # OPTIONAL secretKey = $someString # OPTIONAL skipKeyFileConfig = $someBoolean # REQUIRED storeType = $someMosaicAddStoreRequestStoreType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MosaicAddStoreRequestStoreType]) for enum values. # REQUIRED storeName = $someString # REQUIRED storeUrl = $someString } # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the DeleteStore operation of the 'Mosaic' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mosaic # API Operation: DeleteStore $query = New-RscMutationMosaic -DeleteStore # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED storeName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> <example> Runs the UpdateStore operation of the 'Mosaic' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mosaic # API Operation: UpdateStore $query = New-RscMutationMosaic -UpdateStore # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED modifyStoreData = @{ # OPTIONAL accessKeyId = $someString # OPTIONAL secretKey = $someString # OPTIONAL skipKeyFileConfig = $someBoolean # REQUIRED storeName = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: MosaicAsyncResponse </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationMssql"> <summary> Create a new RscQuery object for any of the 24 operations in the 'Microsoft SQL Server' API domain: AddHost, AssignSlaDomainProperties, AssignSlaDomainPropertiesAsync, BrowseDatabaseSnapshot, BulkCreateOnDemandBackup, BulkUpdateAvailabilityGroup, BulkUpdateDbs, BulkUpdateInstance, BulkUpdatePropertiesOnHost, BulkUpdatePropertiesOnWindowsCluster, CreateLiveMount, CreateLogShippingConfiguration, CreateOnDemandBackup, DeleteDbSnapshots, DeleteLiveMount, DeleteLogShipping, DownloadDatabaseBackupFiles, DownloadDatabaseFilesFromArchivalLocation, ExportDatabase, RestoreDatabase, TakeLogBackup, UpdateDefaultProperties, UpdateLogShippingConfiguration, or UpdateLogShippingConfigurationV1. </summary> <description> New-RscMutationMssql creates a new mutation object for operations in the 'Microsoft SQL Server' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 24 operations in the 'Microsoft SQL Server' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddHost, AssignSlaDomainProperties, AssignSlaDomainPropertiesAsync, BrowseDatabaseSnapshot, BulkCreateOnDemandBackup, BulkUpdateAvailabilityGroup, BulkUpdateDbs, BulkUpdateInstance, BulkUpdatePropertiesOnHost, BulkUpdatePropertiesOnWindowsCluster, CreateLiveMount, CreateLogShippingConfiguration, CreateOnDemandBackup, DeleteDbSnapshots, DeleteLiveMount, DeleteLogShipping, DownloadDatabaseBackupFiles, DownloadDatabaseFilesFromArchivalLocation, ExportDatabase, RestoreDatabase, TakeLogBackup, UpdateDefaultProperties, UpdateLogShippingConfiguration, or UpdateLogShippingConfigurationV1. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMssql -AddHost).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationMssql -AddHost).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddHost operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: AddHost $query = New-RscMutationMssql -AddHost # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED hosts = @( @{ # OPTIONAL hasAgent = $someBoolean # OPTIONAL oracleQueryUser = $someString # OPTIONAL oracleSysDbaUser = $someString # OPTIONAL organizationId = $someString # OPTIONAL alias = $someString # OPTIONAL isOracleHost = $someBoolean # OPTIONAL orgNetworkId = $someString # OPTIONAL osType = $someHostRegisterOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HostRegisterOsType]) for enum values. # OPTIONAL hdfsConfig = @{ # OPTIONAL hdfsBaseConfig = @{ # OPTIONAL apiToken = $someString # OPTIONAL kerberosTicket = $someString # OPTIONAL nameservices = $someString # OPTIONAL username = $someString # REQUIRED hosts = @( @{ # REQUIRED hostname = $someString # REQUIRED port = $someInt } ) } } # REQUIRED hostname = $someString # OPTIONAL mssqlSddUserCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } # OPTIONAL nasConfig = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL apiEndpoint = $someString # OPTIONAL apiHostname = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiToken = $someString # OPTIONAL apiUsername = $someString # OPTIONAL zoneName = $someString # OPTIONAL isSnapdiffEnabled = $someBoolean # OPTIONAL isIsilonChangelistEnabled = $someBoolean # OPTIONAL isNetAppSnapDiffEnabled = $someBoolean # OPTIONAL isShareAutoDiscoveryEnabled = $someBoolean # OPTIONAL isNutanixCftEnabled = $someBoolean # REQUIRED vendorType = $someString } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkRegisterHostAsyncReply </code> </example> <example> Runs the AssignSlaDomainProperties operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: AssignSlaDomainProperties $query = New-RscMutationMssql -AssignSlaDomainProperties # REQUIRED $query.Var.input = @{ # REQUIRED updateInfo = @{ # OPTIONAL shouldApplyToExistingSnapshots = $someBoolean # OPTIONAL shouldApplyToNonPolicySnapshots = $someBoolean # OPTIONAL existingSnapshotRetention = $someExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExistingSnapshotRetention]) for enum values. # REQUIRED ids = @( $someString ) # OPTIONAL mssqlSlaPatchProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL useConfiguredDefaultLogRetention = $someBoolean # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the AssignSlaDomainPropertiesAsync operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: AssignSlaDomainPropertiesAsync $query = New-RscMutationMssql -AssignSlaDomainPropertiesAsync # REQUIRED $query.Var.input = @{ # REQUIRED updateInfo = @{ # OPTIONAL shouldApplyToExistingSnapshots = $someBoolean # OPTIONAL shouldApplyToNonPolicySnapshots = $someBoolean # OPTIONAL existingSnapshotRetention = $someExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExistingSnapshotRetention]) for enum values. # REQUIRED ids = @( $someString ) # OPTIONAL mssqlSlaPatchProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL useConfiguredDefaultLogRetention = $someBoolean # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } } # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AssignMssqlSlaDomainPropertiesAsyncReply </code> </example> <example> Runs the BrowseDatabaseSnapshot operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: BrowseDatabaseSnapshot $query = New-RscMutationMssql -BrowseDatabaseSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL backupType = $someMssqlBackupType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlBackupType]) for enum values. # OPTIONAL endPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } # OPTIONAL legalHoldDownloadConfig = @{ # REQUIRED isLegalHoldDownload = $someBoolean } # OPTIONAL recoveryPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } # OPTIONAL startPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BrowseMssqlDatabaseSnapshotReply </code> </example> <example> Runs the BulkCreateOnDemandBackup operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: BulkCreateOnDemandBackup $query = New-RscMutationMssql -BulkCreateOnDemandBackup # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL availabilityGroupIds = @( $someString ) # OPTIONAL databaseIds = @( $someString ) # OPTIONAL forceFullSnapshot = $someBoolean # OPTIONAL hostIds = @( $someString ) # OPTIONAL instanceIds = @( $someString ) # OPTIONAL windowsClusterIds = @( $someString ) # OPTIONAL baseOnDemandSnapshotConfig = @{ # OPTIONAL slaId = $someString } } # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the BulkUpdateAvailabilityGroup operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: BulkUpdateAvailabilityGroup $query = New-RscMutationMssql -BulkUpdateAvailabilityGroup # REQUIRED $query.Var.input = @{ # REQUIRED availabilityGroupsUpdateProperties = @( @{ # REQUIRED availabilityGroupId = $someString # REQUIRED updateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL mssqlNonSlaProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt } # OPTIONAL mssqlSlaPatchProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL useConfiguredDefaultLogRetention = $someBoolean # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateMssqlAvailabilityGroupReply </code> </example> <example> Runs the BulkUpdateDbs operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: BulkUpdateDbs $query = New-RscMutationMssql -BulkUpdateDbs # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED dbsUpdateProperties = @( @{ # REQUIRED databaseId = $someString # REQUIRED updateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL maxDataStreams = $someInt # OPTIONAL isPaused = $someBoolean # OPTIONAL shouldForceFull = $someBoolean # OPTIONAL shouldClearPostBackupScript = $someBoolean # OPTIONAL shouldClearPreBackupScript = $someBoolean # OPTIONAL mssqlNonSlaProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt } # OPTIONAL mssqlSlaPatchProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL useConfiguredDefaultLogRetention = $someBoolean # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } # OPTIONAL postBackupScript = @{ # REQUIRED scriptErrorAction = $someScriptErrorAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ScriptErrorAction]) for enum values. # REQUIRED scriptPath = $someString # REQUIRED timeoutMs = $someInt64 } # OPTIONAL preBackupScript = @{ # REQUIRED scriptErrorAction = $someScriptErrorAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ScriptErrorAction]) for enum values. # REQUIRED scriptPath = $someString # REQUIRED timeoutMs = $someInt64 } } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateMssqlDbsReply </code> </example> <example> Runs the BulkUpdateInstance operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: BulkUpdateInstance $query = New-RscMutationMssql -BulkUpdateInstance # REQUIRED $query.Var.input = @{ # REQUIRED instancesUpdateProperties = @( @{ # REQUIRED instanceId = $someString # REQUIRED updateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL mssqlNonSlaProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt } # OPTIONAL mssqlSlaPatchProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL useConfiguredDefaultLogRetention = $someBoolean # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateMssqlInstanceReply </code> </example> <example> Runs the BulkUpdatePropertiesOnHost operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: BulkUpdatePropertiesOnHost $query = New-RscMutationMssql -BulkUpdatePropertiesOnHost # REQUIRED $query.Var.input = @{ # REQUIRED hostsUpdateProperties = @( @{ # REQUIRED hostId = $someString # REQUIRED updateProperties = @{ # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateMssqlPropertiesOnHostReply </code> </example> <example> Runs the BulkUpdatePropertiesOnWindowsCluster operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: BulkUpdatePropertiesOnWindowsCluster $query = New-RscMutationMssql -BulkUpdatePropertiesOnWindowsCluster # REQUIRED $query.Var.input = @{ # REQUIRED windowsClustersUpdateProperties = @( @{ # REQUIRED updateProperties = @{ # OPTIONAL mssqlSlaRelatedProperties = @{ # OPTIONAL copyOnly = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL hostLogRetention = $someInt } } # REQUIRED windowsClusterId = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateMssqlPropertiesOnWindowsClusterReply </code> </example> <example> Runs the CreateLiveMount operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: CreateLiveMount $query = New-RscMutationMssql -CreateLiveMount # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL targetInstanceId = $someString # OPTIONAL recoveryModel = $someMssqlDatabaseRecoveryModel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlDatabaseRecoveryModel]) for enum values. # REQUIRED mountedDatabaseName = $someString # REQUIRED recoveryPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateLogShippingConfiguration operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: CreateLogShippingConfiguration $query = New-RscMutationMssql -CreateLogShippingConfiguration # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # OPTIONAL makeupReseedLimit = $someInt # OPTIONAL mssqlLogShippingCreateConfig = @{ # OPTIONAL maxDataStreams = $someInt # OPTIONAL targetDataFilePath = $someString # OPTIONAL targetLogFilePath = $someString # OPTIONAL mssqlLogShippingTargetStateOptions = @{ # OPTIONAL shouldDisconnectStandbyUsers = $someBoolean # REQUIRED state = $someMssqlLogShippingOkState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingOkState]) for enum values. } # REQUIRED targetDatabaseName = $someString # OPTIONAL targetFilePaths = @( @{ # OPTIONAL newFilename = $someString # OPTIONAL newLogicalName = $someString # REQUIRED exportPath = $someString # REQUIRED logicalName = $someString } ) # REQUIRED targetInstanceId = $someString } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateOnDemandBackup operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: CreateOnDemandBackup $query = New-RscMutationMssql -CreateOnDemandBackup # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL forceFullSnapshot = $someBoolean # OPTIONAL baseOnDemandSnapshotConfig = @{ # OPTIONAL slaId = $someString } } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteDbSnapshots operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: DeleteDbSnapshots $query = New-RscMutationMssql -DeleteDbSnapshots # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the DeleteLiveMount operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: DeleteLiveMount $query = New-RscMutationMssql -DeleteLiveMount # REQUIRED $query.Var.input = @{ # OPTIONAL force = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteLogShipping operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: DeleteLogShipping $query = New-RscMutationMssql -DeleteLogShipping # REQUIRED $query.Var.input = @{ # OPTIONAL deleteSecondaryDatabase = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadDatabaseBackupFiles operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: DownloadDatabaseBackupFiles $query = New-RscMutationMssql -DownloadDatabaseBackupFiles # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED items = @( $someString ) # OPTIONAL legalHoldDownloadConfig = @{ # REQUIRED isLegalHoldDownload = $someBoolean } } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadDatabaseFilesFromArchivalLocation operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: DownloadDatabaseFilesFromArchivalLocation $query = New-RscMutationMssql -DownloadDatabaseFilesFromArchivalLocation # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED recoveryPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExportDatabase operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: ExportDatabase $query = New-RscMutationMssql -ExportDatabase # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL allowOverwrite = $someBoolean # OPTIONAL finishRecovery = $someBoolean # OPTIONAL maxDataStreams = $someInt # OPTIONAL targetDataFilePath = $someString # OPTIONAL targetLogFilePath = $someString # REQUIRED recoveryPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } # REQUIRED targetDatabaseName = $someString # OPTIONAL targetFilePaths = @( @{ # OPTIONAL newFilename = $someString # OPTIONAL newLogicalName = $someString # REQUIRED exportPath = $someString # REQUIRED logicalName = $someString } ) # REQUIRED targetInstanceId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RestoreDatabase operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: RestoreDatabase $query = New-RscMutationMssql -RestoreDatabase # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL finishRecovery = $someBoolean # OPTIONAL maxDataStreams = $someInt # REQUIRED recoveryPoint = @{ # OPTIONAL timestampMs = $someInt64 # OPTIONAL date = $someDateTime # OPTIONAL lsnPoint = @{ # OPTIONAL recoveryForkGuid = $someString # REQUIRED lsn = $someString } } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the TakeLogBackup operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: TakeLogBackup $query = New-RscMutationMssql -TakeLogBackup # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the UpdateDefaultProperties operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: UpdateDefaultProperties $query = New-RscMutationMssql -UpdateDefaultProperties # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED defaultProperties = @{ # OPTIONAL cbtStatus = $someBoolean # OPTIONAL logBackupFrequencyInSeconds = $someInt64 # OPTIONAL logRetentionTimeInHours = $someInt # OPTIONAL shouldUseDefaultBackupLocation = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateMssqlDefaultPropertiesReply </code> </example> <example> Runs the UpdateLogShippingConfiguration operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: UpdateLogShippingConfiguration $query = New-RscMutationMssql -UpdateLogShippingConfiguration # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # OPTIONAL makeupReseedLimit = $someInt } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateMssqlLogShippingConfigurationReply </code> </example> <example> Runs the UpdateLogShippingConfigurationV1 operation of the 'Microsoft SQL Server' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Mssql # API Operation: UpdateLogShippingConfigurationV1 $query = New-RscMutationMssql -UpdateLogShippingConfigurationV1 # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL mssqlLogShippingTargetStateOptions = @{ # OPTIONAL shouldDisconnectStandbyUsers = $someBoolean # REQUIRED state = $someMssqlLogShippingOkState # Call [Enum]::GetValues([RubrikSecurityCloud.Types.MssqlLogShippingOkState]) for enum values. } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationNas"> <summary> 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. </summary> <description> 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. </description> <example> Runs the BulkAddNasShares operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: BulkAddNasShares $query = New-RscMutationNas -BulkAddNasShares # REQUIRED $query.Var.input = @{ # REQUIRED bulkAddNasShareInput = @{ # REQUIRED nasShares = @( @{ # REQUIRED shareType = $someCreateNasShareInputShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CreateNasShareInputShareType]) for enum values. # OPTIONAL credentials = @{ # OPTIONAL password = $someString # REQUIRED username = $someString } # REQUIRED exportPoint = $someString } ) # REQUIRED nasSourceId = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkAddNasSharesReply </code> </example> <example> Runs the BulkDeleteNasShares operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: BulkDeleteNasShares $query = New-RscMutationNas -BulkDeleteNasShares # REQUIRED $query.Var.input = @{ # REQUIRED bulkDeleteNasShareRequest = @{ # REQUIRED ids = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the BulkDeleteNasSystems operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: BulkDeleteNasSystems $query = New-RscMutationNas -BulkDeleteNasSystems # REQUIRED $query.Var.input = @{ # REQUIRED bulkDeleteNasSystemRequest = @{ # REQUIRED ids = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus </code> </example> <example> Runs the BulkUpdateNasShares operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: BulkUpdateNasShares $query = New-RscMutationNas -BulkUpdateNasShares # REQUIRED $query.Var.input = @{ # REQUIRED bulkUpdateNasShareInput = @{ # REQUIRED nasShares = @( @{ # OPTIONAL isIsilonChangelistEnabled = $someBoolean # OPTIONAL exportPoint = $someString # OPTIONAL nasSourceId = $someString # OPTIONAL credentials = @{ # OPTIONAL password = $someString # REQUIRED username = $someString } # REQUIRED id = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateNasSharesReply </code> </example> <example> Runs the DeleteNasSystem operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: DeleteNasSystem $query = New-RscMutationNas -DeleteNasSystem # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the HideRevealNasShares operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: HideRevealNasShares $query = New-RscMutationNas -HideRevealNasShares # REQUIRED $query.Var.input = @{ # REQUIRED hideNasSharesRequest = @{ # REQUIRED action = $someHideRevealAction # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HideRevealAction]) for enum values. # REQUIRED ids = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the RefreshNasSystems operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: RefreshNasSystems $query = New-RscMutationNas -RefreshNasSystems # REQUIRED $query.Var.input = @{ # REQUIRED discoverNasSystemRequest = @{ # REQUIRED ids = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RefreshNasSystemsReply </code> </example> <example> Runs the RegisterNasSystem operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: RegisterNasSystem $query = New-RscMutationNas -RegisterNasSystem # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED nasSystem = @{ # OPTIONAL isIsilonChangelistEnabled = $someBoolean # OPTIONAL shouldGrantSmbShareRootAccess = $someBoolean # OPTIONAL shouldGrantNfsShareRootAccess = $someBoolean # REQUIRED nasVendorType = $someNasVendorType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NasVendorType]) for enum values. # OPTIONAL genericNasSystemParameters = @{ # REQUIRED hasNfsSupport = $someBoolean # REQUIRED hasSmbSupport = $someBoolean # OPTIONAL smbCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } # REQUIRED hostname = $someString # OPTIONAL nasFlashBladeApiCredentials = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL certificateId = $someString # REQUIRED apiToken = $someString # REQUIRED hasSmbSupport = $someBoolean # OPTIONAL smbCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } # OPTIONAL nasTmpApiCredentials = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiUsername = $someString # OPTIONAL certificateId = $someString } # OPTIONAL nutanixFileServerParameters = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL certificateId = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiUsername = $someString # REQUIRED hasSmbSupport = $someBoolean # OPTIONAL smbCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } # OPTIONAL smbCredentials = @{ # OPTIONAL password = $someString # REQUIRED username = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RegisterNasSystemReply </code> </example> <example> Runs the UpdateNasShares operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: UpdateNasShares $query = New-RscMutationNas -UpdateNasShares # REQUIRED $query.Var.input = @{ # REQUIRED updateNasSharesRequest = @{ # REQUIRED nasShareProperties = @( @{ # OPTIONAL isIsilonChangelistEnabled = $someBoolean # REQUIRED id = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateNasSystem operation of the 'NAS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nas # API Operation: UpdateNasSystem $query = New-RscMutationNas -UpdateNasSystem # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED nasSystemUpdateProperties = @{ # OPTIONAL hostname = $someString # OPTIONAL isIsilonChangelistEnabled = $someBoolean # OPTIONAL shouldResetGeneratedNamespaceSmbCredentials = $someBoolean # OPTIONAL shouldGrantSmbShareRootAccess = $someBoolean # OPTIONAL shouldGrantNfsShareRootAccess = $someBoolean # OPTIONAL genericNasSystemParameters = @{ # REQUIRED hasNfsSupport = $someBoolean # REQUIRED hasSmbSupport = $someBoolean # OPTIONAL smbCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } # OPTIONAL nasApiCredentials = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiUsername = $someString # OPTIONAL certificateId = $someString } # OPTIONAL nasFlashBladeApiCredentials = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL certificateId = $someString # REQUIRED apiToken = $someString # REQUIRED hasSmbSupport = $someBoolean # OPTIONAL smbCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } # OPTIONAL nutanixFileServerParameters = @{ # OPTIONAL apiCertificate = $someString # OPTIONAL certificateId = $someString # OPTIONAL apiPassword = $someString # OPTIONAL apiUsername = $someString # REQUIRED hasSmbSupport = $someBoolean # OPTIONAL smbCredentials = @{ # REQUIRED password = $someString # REQUIRED username = $someString } } # OPTIONAL smbCredentials = @{ # OPTIONAL password = $someString # REQUIRED username = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateNasSystemReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationNfs"> <summary> Create a new RscQuery object for any of the 3 operations in the 'NFS' API domain: CreateReaderTarget, CreateTarget, or UpdateTarget. </summary> <description> 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. </description> <example> Runs the CreateReaderTarget operation of the 'NFS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nfs # API Operation: CreateReaderTarget $query = New-RscMutationNfs -CreateReaderTarget # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED clusterUuid = $someString # REQUIRED host = $someString # REQUIRED exportDir = $someString # OPTIONAL nfsVersion = $someInt # REQUIRED nfsAuthType = $someAuthTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthTypeEnum]) for enum values. # OPTIONAL otherNfsOptions = $someString # REQUIRED fileLockPeriodInSeconds = $someInt # REQUIRED destinationFolder = $someString # REQUIRED isConsolidationEnabled = $someBoolean # OPTIONAL encryptionPassword = $someString # REQUIRED readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the CreateTarget operation of the 'NFS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nfs # API Operation: CreateTarget $query = New-RscMutationNfs -CreateTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED name = $someString # REQUIRED host = $someString # REQUIRED exportDir = $someString # OPTIONAL nfsVersion = $someInt # REQUIRED nfsAuthType = $someAuthTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthTypeEnum]) for enum values. # OPTIONAL otherNfsOptions = $someString # REQUIRED fileLockPeriodInSeconds = $someInt # REQUIRED destinationFolder = $someString # REQUIRED isConsolidationEnabled = $someBoolean # OPTIONAL encryptionPassword = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the UpdateTarget operation of the 'NFS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nfs # API Operation: UpdateTarget $query = New-RscMutationNfs -UpdateTarget # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # OPTIONAL host = $someString # OPTIONAL exportDir = $someString # OPTIONAL nfsAuthType = $someAuthTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AuthTypeEnum]) for enum values. # OPTIONAL fileLockPeriodInSeconds = $someInt # OPTIONAL isConsolidationEnabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationNutanix"> <summary> Create a new RscQuery object for any of the 27 operations in the 'Nutanix' API domain: BatchExportVm, BatchMountVm, BulkOnDemandSnapshotVm, CreateCluster, CreateOnDemandBackup, CreatePrismCentral, DeleteCluster, DeleteMountV1, DeletePrismCentral, DeleteSnapshot, DeleteSnapshots, DownloadFilesSnapshot, DownloadSnapshot, DownloadVdisks, DownloadVmFromLocation, ExportSnapshot, MigrateMountV1, MountSnapshotV1, MountVdisks, PatchMountV1, RefreshCluster, RefreshPrismCentral, RegisterAgentVm, RestoreFilesSnapshot, UpdateCluster, UpdatePrismCentral, or UpdateVm. </summary> <description> New-RscMutationNutanix creates a new mutation object for operations in the 'Nutanix' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 27 operations in the 'Nutanix' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: BatchExportVm, BatchMountVm, BulkOnDemandSnapshotVm, CreateCluster, CreateOnDemandBackup, CreatePrismCentral, DeleteCluster, DeleteMountV1, DeletePrismCentral, DeleteSnapshot, DeleteSnapshots, DownloadFilesSnapshot, DownloadSnapshot, DownloadVdisks, DownloadVmFromLocation, ExportSnapshot, MigrateMountV1, MountSnapshotV1, MountVdisks, PatchMountV1, RefreshCluster, RefreshPrismCentral, RegisterAgentVm, RestoreFilesSnapshot, UpdateCluster, UpdatePrismCentral, or UpdateVm. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNutanix -BatchExportVm).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationNutanix -BatchExportVm).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the BatchExportVm operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: BatchExportVm $query = New-RscMutationNutanix -BatchExportVm # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED snapshots = @( @{ # OPTIONAL snapshotAfterDate = $someDateTime # OPTIONAL snapshotBeforeDate = $someDateTime # OPTIONAL snapshotId = $someString # OPTIONAL vmNamePrefix = $someString # REQUIRED exportConfig = @{ # OPTIONAL nutanixClusterId = $someString # OPTIONAL powerOn = $someBoolean # OPTIONAL removeNetworkDevices = $someBoolean # OPTIONAL vmName = $someString # OPTIONAL keepMacAddresses = $someBoolean # OPTIONAL nicNetworkUuids = @( $someString ) # REQUIRED containerNaturalId = $someString } # REQUIRED vmId = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchExportNutanixVmReply </code> </example> <example> Runs the BatchMountVm operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: BatchMountVm $query = New-RscMutationNutanix -BatchMountVm # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED snapshots = @( @{ # OPTIONAL snapshotAfterDate = $someDateTime # OPTIONAL snapshotBeforeDate = $someDateTime # OPTIONAL snapshotId = $someString # OPTIONAL vmNamePrefix = $someString # REQUIRED mountConfig = @{ # OPTIONAL containerNaturalId = $someString # OPTIONAL nutanixClusterId = $someString # OPTIONAL shouldMigrateImmediately = $someBoolean # OPTIONAL shouldPowerOn = $someBoolean # OPTIONAL shouldRemoveNetwork = $someBoolean # OPTIONAL targetNetwork = $someString # OPTIONAL vmName = $someString # OPTIONAL keepMacAddresses = $someBoolean # OPTIONAL nicNetworkUuids = @( $someString ) # REQUIRED shouldDisableMigration = $someBoolean } # REQUIRED vmId = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchMountNutanixVmReply </code> </example> <example> Runs the BulkOnDemandSnapshotVm operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: BulkOnDemandSnapshotVm $query = New-RscMutationNutanix -BulkOnDemandSnapshotVm # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED vms = @( @{ # REQUIRED backupConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED vmId = $someString } ) } # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkOnDemandSnapshotNutanixVmReply </code> </example> <example> Runs the CreateCluster operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: CreateCluster $query = New-RscMutationNutanix -CreateCluster # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED nutanixClusterConfig = @{ # REQUIRED caCerts = $someString # REQUIRED hostname = $someString # REQUIRED nutanixClusterUuid = $someString # REQUIRED password = $someString # REQUIRED username = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateOnDemandBackup operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: CreateOnDemandBackup $query = New-RscMutationNutanix -CreateOnDemandBackup # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreatePrismCentral operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: CreatePrismCentral $query = New-RscMutationNutanix -CreatePrismCentral # REQUIRED $query.Var.input = @{ # REQUIRED prismCentralConfig = @{ # REQUIRED caCerts = $someString # REQUIRED hostname = $someString # REQUIRED password = $someString # REQUIRED username = $someString } # REQUIRED prismElementCdmTuple = @( @{ # REQUIRED nutanixClusterId = $someString # REQUIRED cdmClusterId = $someString } ) # OPTIONAL isDrEnabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus </code> </example> <example> Runs the DeleteCluster operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DeleteCluster $query = New-RscMutationNutanix -DeleteCluster # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteMountV1 operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DeleteMountV1 $query = New-RscMutationNutanix -DeleteMountV1 # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeletePrismCentral operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DeletePrismCentral $query = New-RscMutationNutanix -DeletePrismCentral # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus </code> </example> <example> Runs the DeleteSnapshot operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DeleteSnapshot $query = New-RscMutationNutanix -DeleteSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED location = $someInternalDeleteNutanixSnapshotRequestLocation # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InternalDeleteNutanixSnapshotRequestLocation]) for enum values. # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the DeleteSnapshots operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DeleteSnapshots $query = New-RscMutationNutanix -DeleteSnapshots # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the DownloadFilesSnapshot operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DownloadFilesSnapshot $query = New-RscMutationNutanix -DownloadFilesSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL legalHoldDownloadConfig = @{ # REQUIRED isLegalHoldDownload = $someBoolean } # REQUIRED paths = @( $someString ) } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadSnapshot operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DownloadSnapshot $query = New-RscMutationNutanix -DownloadSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadVdisks operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DownloadVdisks $query = New-RscMutationNutanix -DownloadVdisks # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED vdiskIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadVmFromLocation operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: DownloadVmFromLocation $query = New-RscMutationNutanix -DownloadVmFromLocation # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExportSnapshot operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: ExportSnapshot $query = New-RscMutationNutanix -ExportSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL nutanixClusterId = $someString # OPTIONAL powerOn = $someBoolean # OPTIONAL removeNetworkDevices = $someBoolean # OPTIONAL vmName = $someString # OPTIONAL keepMacAddresses = $someBoolean # OPTIONAL nicNetworkUuids = @( $someString ) # REQUIRED containerNaturalId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the MigrateMountV1 operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: MigrateMountV1 $query = New-RscMutationNutanix -MigrateMountV1 # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the MountSnapshotV1 operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: MountSnapshotV1 $query = New-RscMutationNutanix -MountSnapshotV1 # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL containerNaturalId = $someString # OPTIONAL nutanixClusterId = $someString # OPTIONAL shouldMigrateImmediately = $someBoolean # OPTIONAL shouldPowerOn = $someBoolean # OPTIONAL shouldRemoveNetwork = $someBoolean # OPTIONAL targetNetwork = $someString # OPTIONAL vmName = $someString # OPTIONAL keepMacAddresses = $someBoolean # OPTIONAL nicNetworkUuids = @( $someString ) # REQUIRED shouldDisableMigration = $someBoolean } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the MountVdisks operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: MountVdisks $query = New-RscMutationNutanix -MountVdisks # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL shouldMigrateImmediately = $someBoolean # OPTIONAL containerNaturalId = $someString # REQUIRED shouldDisableMigration = $someBoolean # REQUIRED targetVirtualMachineId = $someString # REQUIRED virtualDiskIds = @( $someString ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the PatchMountV1 operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: PatchMountV1 $query = New-RscMutationNutanix -PatchMountV1 # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED shouldPowerOn = $someBoolean } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PatchNutanixMountV1Reply </code> </example> <example> Runs the RefreshCluster operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: RefreshCluster $query = New-RscMutationNutanix -RefreshCluster # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RefreshPrismCentral operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: RefreshPrismCentral $query = New-RscMutationNutanix -RefreshPrismCentral # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncRequestStatus </code> </example> <example> Runs the RegisterAgentVm operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: RegisterAgentVm $query = New-RscMutationNutanix -RegisterAgentVm # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the RestoreFilesSnapshot operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: RestoreFilesSnapshot $query = New-RscMutationNutanix -RestoreFilesSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL targetVirtualMachineId = $someString # REQUIRED restoreConfig = @( @{ # REQUIRED path = $someString # REQUIRED restorePath = $someString } ) } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the UpdateCluster operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: UpdateCluster $query = New-RscMutationNutanix -UpdateCluster # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED patchProperties = @{ # OPTIONAL caCerts = $someString # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL hostname = $someString # OPTIONAL password = $someString # OPTIONAL username = $someString # OPTIONAL snapshotConsistencyMandate = $someCdmNutanixSnapshotConsistencyMandate # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmNutanixSnapshotConsistencyMandate]) for enum values. } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateNutanixClusterReply </code> </example> <example> Runs the UpdatePrismCentral operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: UpdatePrismCentral $query = New-RscMutationNutanix -UpdatePrismCentral # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED patchProperties = @{ # OPTIONAL caCerts = $someString # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL hostname = $someString # OPTIONAL password = $someString # OPTIONAL username = $someString # OPTIONAL isDrEnabled = $someBoolean # OPTIONAL nutanixClusters = @( @{ # OPTIONAL name = $someString # OPTIONAL password = $someString # OPTIONAL username = $someString # REQUIRED clusterUuid = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateNutanixPrismCentralReply </code> </example> <example> Runs the UpdateVm operation of the 'Nutanix' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Nutanix # API Operation: UpdateVm $query = New-RscMutationNutanix -UpdateVm # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED vmPatchProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL excludedDiskIds = @( $someString ) # OPTIONAL isPaused = $someBoolean # OPTIONAL snapshotConsistencyMandate = $someCdmNutanixSnapshotConsistencyMandate # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CdmNutanixSnapshotConsistencyMandate]) for enum values. # OPTIONAL postBackupScript = @{ # REQUIRED failureHandling = $someNutanixVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixVirtualMachineScriptDetailFailureHandling]) for enum values. # REQUIRED scriptPath = $someString # REQUIRED timeoutMs = $someInt64 } # OPTIONAL postSnapScript = @{ # REQUIRED failureHandling = $someNutanixVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixVirtualMachineScriptDetailFailureHandling]) for enum values. # REQUIRED scriptPath = $someString # REQUIRED timeoutMs = $someInt64 } # OPTIONAL preBackupScript = @{ # REQUIRED failureHandling = $someNutanixVirtualMachineScriptDetailFailureHandling # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NutanixVirtualMachineScriptDetailFailureHandling]) for enum values. # REQUIRED scriptPath = $someString # REQUIRED timeoutMs = $someInt64 } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: NutanixVmDetail </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationO365"> <summary> Create a new RscQuery object for any of the 33 operations in the 'Office 365' API domain: AddOrg, BackupMailbox, BackupOnedrive, BackupSharePointSite, BackupSharepointDrive, BackupSharepointList, BackupTeam, CreateAppComplete, CreateAppKickoff, DeleteAzureApp, DeleteOrg, DeleteServiceAccount, EnableSharePoint, EnableTeams, ExportMailbox, ExportMailboxV2, InsertCustomerApp, OauthConsentComplete, OauthConsentKickoff, PdlGroups, RefreshOrg, RestoreMailbox, RestoreMailboxV2, RestoreSnappable, RestoreTeamsConversations, RestoreTeamsFiles, SaaSSetupKickoff, SaasSetupComplete, SetServiceAccount, SetupKickoff, UpdateAppAuthStatus, UpdateAppPermissions, or UpdateOrgCustomName. </summary> <description> New-RscMutationO365 creates a new mutation object for operations in the 'Office 365' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 33 operations in the 'Office 365' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddOrg, BackupMailbox, BackupOnedrive, BackupSharePointSite, BackupSharepointDrive, BackupSharepointList, BackupTeam, CreateAppComplete, CreateAppKickoff, DeleteAzureApp, DeleteOrg, DeleteServiceAccount, EnableSharePoint, EnableTeams, ExportMailbox, ExportMailboxV2, InsertCustomerApp, OauthConsentComplete, OauthConsentKickoff, PdlGroups, RefreshOrg, RestoreMailbox, RestoreMailboxV2, RestoreSnappable, RestoreTeamsConversations, RestoreTeamsFiles, SaaSSetupKickoff, SaasSetupComplete, SetServiceAccount, SetupKickoff, UpdateAppAuthStatus, UpdateAppPermissions, or UpdateOrgCustomName. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationO365 -AddOrg).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationO365 -AddOrg).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddOrg operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: AddOrg $query = New-RscMutationO365 -AddOrg # REQUIRED $query.Var.input = @{ # REQUIRED tenantId = $someString # REQUIRED stateToken = $someString # REQUIRED exocomputeClusterId = $someString # REQUIRED appTypes = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddO365OrgResponse </code> </example> <example> Runs the BackupMailbox operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: BackupMailbox $query = New-RscMutationO365 -BackupMailbox # REQUIRED $query.Var.mailboxIds = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the BackupOnedrive operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: BackupOnedrive $query = New-RscMutationO365 -BackupOnedrive # REQUIRED $query.Var.input = @{ # REQUIRED snappableUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the BackupSharePointSite operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: BackupSharePointSite $query = New-RscMutationO365 -BackupSharePointSite # REQUIRED $query.Var.input = @{ # REQUIRED siteFid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the BackupSharepointDrive operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: BackupSharepointDrive $query = New-RscMutationO365 -BackupSharepointDrive # REQUIRED $query.Var.input = @{ # REQUIRED snappableUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the BackupSharepointList operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: BackupSharepointList $query = New-RscMutationO365 -BackupSharepointList # REQUIRED $query.Var.input = @{ # REQUIRED snappableUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the BackupTeam operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: BackupTeam $query = New-RscMutationO365 -BackupTeam # REQUIRED $query.Var.input = @{ # REQUIRED snappableUuids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchAsyncJobStatus </code> </example> <example> Runs the CreateAppComplete operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: CreateAppComplete $query = New-RscMutationO365 -CreateAppComplete # REQUIRED $query.Var.input = @{ # REQUIRED appClientId = $someString # REQUIRED stateToken = $someString # REQUIRED tenantId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the CreateAppKickoff operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: CreateAppKickoff $query = New-RscMutationO365 -CreateAppKickoff # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED appType = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateO365AppKickoffResp </code> </example> <example> Runs the DeleteAzureApp operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: DeleteAzureApp $query = New-RscMutationO365 -DeleteAzureApp # REQUIRED $query.Var.o365AppClientId = $someString # REQUIRED $query.Var.o365AppType = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the DeleteOrg operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: DeleteOrg $query = New-RscMutationO365 -DeleteOrg # REQUIRED $query.Var.orgId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the DeleteServiceAccount operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: DeleteServiceAccount $query = New-RscMutationO365 -DeleteServiceAccount # REQUIRED $query.Var.orgId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the EnableSharePoint operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: EnableSharePoint $query = New-RscMutationO365 -EnableSharePoint # REQUIRED $query.Var.input = @{ # REQUIRED exocomputeClusterId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the EnableTeams operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: EnableTeams $query = New-RscMutationO365 -EnableTeams # REQUIRED $query.Var.exocomputeClusterId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the ExportMailbox operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: ExportMailbox $query = New-RscMutationO365 -ExportMailbox # REQUIRED $query.Var.exportConfig = @{ # OPTIONAL orgUuid = $someString # REQUIRED fromMailboxUuid = $someString # REQUIRED toMailboxUuid = $someString # OPTIONAL snapshotUuid = $someString # REQUIRED exportConfigs = @( @{ # REQUIRED SnapshotUUID = $someString # OPTIONAL EmailID = $someString # OPTIONAL FolderID = $someString # OPTIONAL hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values. # OPTIONAL parentFolderId = $someString } ) # OPTIONAL actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values. # OPTIONAL inplaceRestoreConfig = @{ # REQUIRED nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values. } # OPTIONAL skipRifItems = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the ExportMailboxV2 operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: ExportMailboxV2 $query = New-RscMutationO365 -ExportMailboxV2 # REQUIRED $query.Var.input = @{ # OPTIONAL orgUuid = $someString # REQUIRED fromMailboxUuid = $someString # REQUIRED toMailboxUuid = $someString # OPTIONAL snapshotUuid = $someString # REQUIRED exportConfigs = @( @{ # REQUIRED SnapshotUUID = $someString # OPTIONAL EmailID = $someString # OPTIONAL FolderID = $someString # OPTIONAL hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values. # OPTIONAL parentFolderId = $someString } ) # OPTIONAL actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values. # OPTIONAL inplaceRestoreConfig = @{ # REQUIRED nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values. } # OPTIONAL skipRifItems = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> <example> Runs the InsertCustomerApp operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: InsertCustomerApp $query = New-RscMutationO365 -InsertCustomerApp # REQUIRED $query.Var.input = @{ # REQUIRED appType = $someString # REQUIRED appClientId = $someString # REQUIRED appClientSecret = $someString # REQUIRED subscriptionId = $someString # OPTIONAL base64AppCertificate = $someString # OPTIONAL base64AppPrivateKey = $someString # OPTIONAL updateAppCredentials = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the OauthConsentComplete operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: OauthConsentComplete $query = New-RscMutationO365 -OauthConsentComplete # REQUIRED $query.Var.input = @{ # REQUIRED tenantId = $someString # REQUIRED code = $someString # REQUIRED stateToken = $someString # REQUIRED redirectUrl = $someString # REQUIRED resourceNaturalId = $someString # OPTIONAL resourceId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: O365OauthConsentCompleteReply </code> </example> <example> Runs the OauthConsentKickoff operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: OauthConsentKickoff $query = New-RscMutationO365 -OauthConsentKickoff # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED appType = $someString # OPTIONAL resourceId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: O365OauthConsentKickoffReply </code> </example> <example> Runs the PdlGroups operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: PdlGroups $query = New-RscMutationO365 -PdlGroups # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED pdlAndWorkloadPairs = @( @{ # REQUIRED pdl = $someString # REQUIRED workload = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: O365PdlGroupsReply </code> </example> <example> Runs the RefreshOrg operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: RefreshOrg $query = New-RscMutationO365 -RefreshOrg # REQUIRED $query.Var.orgId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the RestoreMailbox operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: RestoreMailbox $query = New-RscMutationO365 -RestoreMailbox # REQUIRED $query.Var.restoreConfig = @{ # OPTIONAL orgUuid = $someString # REQUIRED mailboxUuid = $someString # OPTIONAL snapshotUuid = $someString # REQUIRED restoreConfigs = @( @{ # REQUIRED SnapshotUUID = $someString # OPTIONAL EmailID = $someString # OPTIONAL FolderID = $someString # OPTIONAL hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values. # OPTIONAL parentFolderId = $someString } ) # REQUIRED actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values. # OPTIONAL inplaceRestoreConfig = @{ # REQUIRED nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values. } # OPTIONAL skipRifItems = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the RestoreMailboxV2 operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: RestoreMailboxV2 $query = New-RscMutationO365 -RestoreMailboxV2 # REQUIRED $query.Var.input = @{ # OPTIONAL orgUuid = $someString # REQUIRED mailboxUuid = $someString # OPTIONAL snapshotUuid = $someString # REQUIRED restoreConfigs = @( @{ # REQUIRED SnapshotUUID = $someString # OPTIONAL EmailID = $someString # OPTIONAL FolderID = $someString # OPTIONAL hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values. # OPTIONAL parentFolderId = $someString } ) # REQUIRED actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values. # OPTIONAL inplaceRestoreConfig = @{ # REQUIRED nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values. } # OPTIONAL skipRifItems = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<CreateOnDemandJobReply> </code> </example> <example> Runs the RestoreSnappable operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: RestoreSnappable $query = New-RscMutationO365 -RestoreSnappable # REQUIRED $query.Var.input = @{ # REQUIRED snappableType = $someSnappableType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableType]) for enum values. # REQUIRED sourceSnappableUuid = $someString # REQUIRED destinationSnappableUuid = $someString # REQUIRED restoreConfig = @{ # OPTIONAL destinationOrgUuid = $someString # OPTIONAL SharePointDriveRestoreConfig = @{ # REQUIRED driveRestoreConfig = @{ # REQUIRED filesToRestore = @( @{ # REQUIRED fileId = $someString # REQUIRED fileName = $someString # REQUIRED fileSnapshotsToRestore = @( @{ # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # REQUIRED fileSize = $someInt64 } ) # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED foldersToRestore = @( @{ # REQUIRED folderId = $someString # REQUIRED folderName = $someString # REQUIRED folderSize = $someInt64 # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED restoreFolderPath = $someString } # OPTIONAL docLibName = $someString # OPTIONAL parentSiteUuid = $someString } # OPTIONAL sharePointListRestoreConfig = @{ # REQUIRED itemsToRestore = @( @{ # REQUIRED itemId = $someString # REQUIRED itemName = $someString # REQUIRED itemSnapshotsToRestore = @( @{ # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt } ) } ) # REQUIRED foldersToRestore = @( @{ # REQUIRED folderId = $someString # REQUIRED folderName = $someString # REQUIRED folderSize = $someInt64 # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED restoreFolderPath = $someString # OPTIONAL listName = $someString # OPTIONAL parentSiteUuid = $someString } # OPTIONAL sharePointFullRestoreConfig = @{ # OPTIONAL spObjectToRestore = @{ # REQUIRED objectSharepointId = $someString # OPTIONAL objectId = $someString # REQUIRED objectName = $someString # OPTIONAL objectType = $someSnappableType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableType]) for enum values. # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # OPTIONAL siteOwnerEmail = $someString } # OPTIONAL spItemsToRestore = @{ # REQUIRED sharepointId = $someString # OPTIONAL objectId = $someString # OPTIONAL snappableType = $someSnappableType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableType]) for enum values. # REQUIRED listItems = @( @{ # REQUIRED itemId = $someString # REQUIRED itemName = $someString # REQUIRED itemSnapshotsToRestore = @( @{ # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt } ) } ) # REQUIRED folderItems = @( @{ # REQUIRED folderId = $someString # REQUIRED folderName = $someString # REQUIRED folderSize = $someInt64 # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED fileItems = @( @{ # REQUIRED fileId = $someString # REQUIRED fileName = $someString # REQUIRED fileSnapshotsToRestore = @( @{ # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # REQUIRED fileSize = $someInt64 } ) # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED arePageLibraryItems = $someBoolean } # OPTIONAL targetObjectUuid = $someString # OPTIONAL targetObjectType = $someSnappableType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableType]) for enum values. # REQUIRED shouldCreateNewObject = $someBoolean # OPTIONAL newObjectType = $someSnappableType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnappableType]) for enum values. # OPTIONAL newObjectName = $someString } # OPTIONAL OneDriveRestoreConfig = @{ # REQUIRED filesToRestore = @( @{ # REQUIRED fileId = $someString # REQUIRED fileName = $someString # REQUIRED fileSnapshotsToRestore = @( @{ # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # REQUIRED fileSize = $someInt64 } ) # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED foldersToRestore = @( @{ # REQUIRED folderId = $someString # REQUIRED folderName = $someString # REQUIRED folderSize = $someInt64 # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED restoreFolderPath = $someString } # OPTIONAL TeamsRestoreConfig = @{ # OPTIONAL filesRestoreConfig = @{ # REQUIRED filesToRestore = @( @{ # REQUIRED fileId = $someString # REQUIRED fileName = $someString # REQUIRED fileSnapshotsToRestore = @( @{ # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # REQUIRED fileSize = $someInt64 } ) # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED foldersToRestore = @( @{ # REQUIRED folderId = $someString # REQUIRED folderName = $someString # REQUIRED folderSize = $someInt64 # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED restoreFolderPath = $someString } # OPTIONAL conversationsRestoreConfig = @{ # OPTIONAL SearchFilter = @{ # OPTIONAL PostedTime = @{ # OPTIONAL FromTime = $someInt64 # OPTIONAL UntilTime = $someInt64 } # OPTIONAL PostedBy = $someString # OPTIONAL SnapshotId = $someString } # OPTIONAL ChannelInfoForFullRestore = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelFolderId = $someString # OPTIONAL ChannelNaturalId = $someString } # REQUIRED RefreshTokenEncrypted = $someString # REQUIRED O365AppID = $someString # REQUIRED ChannelsToRestore = @( @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelFolderId = $someString # OPTIONAL ChannelNaturalId = $someString } ) # REQUIRED ShouldRestoreFileAttachments = $someBoolean } # OPTIONAL destChannelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } # REQUIRED shouldCreateDestChannel = $someBoolean # REQUIRED channelType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. # REQUIRED restoreLatestPermissions = $someBoolean # REQUIRED snapshotSequenceNum = $someInt } # OPTIONAL MailboxRestoreConfig = @{ # 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 } ) # OPTIONAL skipRifItems = $someBoolean } # OPTIONAL calendarRestoreConfig = @{ # REQUIRED eventsToRestore = @( @{ # REQUIRED eventId = $someString # REQUIRED snapshotId = $someString # OPTIONAL hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values. } ) # REQUIRED calendarsToRestore = @( @{ # REQUIRED calendarId = $someString # REQUIRED snapshotId = $someString # OPTIONAL hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values. } ) # REQUIRED calendarGroupsToRestore = @( @{ # REQUIRED calendarGroupId = $someString # REQUIRED snapshotId = $someString # OPTIONAL hierarchyType = $someExchangeItemHierarchyType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ExchangeItemHierarchyType]) for enum values. } ) # OPTIONAL skipRifItems = $someBoolean } # OPTIONAL contactsRestoreConfig = @{ # REQUIRED contactsToRestore = @( @{ # REQUIRED contactId = $someString # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt } ) # REQUIRED contactFoldersToRestore = @( @{ # REQUIRED contactFolderId = $someString # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt } ) # OPTIONAL skipRifItems = $someBoolean } # OPTIONAL inplaceRestoreConfig = @{ # REQUIRED nameCollisionRule = $someNameCollisionRule # Call [Enum]::GetValues([RubrikSecurityCloud.Types.NameCollisionRule]) for enum values. } # OPTIONAL failedItemsRecoveryConfig = @{ # REQUIRED failedItemsInstanceId = $someString } # OPTIONAL relicRestoreConfig = @{ # OPTIONAL unused = $someBoolean } } # REQUIRED actionType = $someO365RestoreActionType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365RestoreActionType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the RestoreTeamsConversations operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: RestoreTeamsConversations $query = New-RscMutationO365 -RestoreTeamsConversations # REQUIRED $query.Var.input = @{ # REQUIRED teamUuid = $someString # OPTIONAL destTeamsChannelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } # REQUIRED shouldCreateDestChannel = $someBoolean # 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 channelInfoForFullRestore = @{ # REQUIRED naturalId = $someString # OPTIONAL channelId = $someString # REQUIRED name = $someString # REQUIRED folderId = $someString # REQUIRED membershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } # REQUIRED shouldRestoreFileAttachments = $someBoolean # REQUIRED teamChannels = @( @{ # REQUIRED naturalId = $someString # OPTIONAL channelId = $someString # REQUIRED name = $someString # REQUIRED folderId = $someString # REQUIRED membershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } ) # OPTIONAL 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 } } # REQUIRED refreshTokenEncrypted = $someString # REQUIRED o365AppId = $someString # REQUIRED channelRecoveryType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. # REQUIRED recoverWithLatestPermissions = $someBoolean # REQUIRED snapshotSequenceNum = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the RestoreTeamsFiles operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: RestoreTeamsFiles $query = New-RscMutationO365 -RestoreTeamsFiles # REQUIRED $query.Var.input = @{ # REQUIRED filesToRestore = @( @{ # REQUIRED fileId = $someString # REQUIRED fileName = $someString # REQUIRED fileSnapshotsToRestore = @( @{ # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # REQUIRED fileSize = $someInt64 } ) # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # REQUIRED foldersToRestore = @( @{ # REQUIRED folderId = $someString # REQUIRED folderName = $someString # REQUIRED folderSize = $someInt64 # REQUIRED snapshotId = $someString # REQUIRED snapshotNum = $someInt # OPTIONAL channelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } } ) # OPTIONAL destTeamsChannelInfo = @{ # REQUIRED TeamID = $someString # OPTIONAL ChannelID = $someString # OPTIONAL ChannelName = $someString # OPTIONAL ChannelFolderName = $someString # OPTIONAL ChannelNaturalId = $someString # REQUIRED channelMembershipType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. } # REQUIRED shouldCreateDestChannel = $someBoolean # 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. } # REQUIRED channelRecoveryType = $someChannelMembershipType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ChannelMembershipType]) for enum values. # REQUIRED recoverWithLatestPermissions = $someBoolean # REQUIRED snapshotSequenceNum = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateOnDemandJobReply </code> </example> <example> Runs the SaaSSetupKickoff operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: SaaSSetupKickoff $query = New-RscMutationO365 -SaaSSetupKickoff # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: O365SaasSetupKickoffReply </code> </example> <example> Runs the SaasSetupComplete operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: SaasSetupComplete $query = New-RscMutationO365 -SaasSetupComplete # REQUIRED $query.Var.input = @{ # REQUIRED tenantId = $someString # REQUIRED regionName = $someString # REQUIRED stateToken = $someString # REQUIRED appTypes = @( $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 } # REQUIRED storeBackupInSameRegionAsData = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddO365OrgResponse </code> </example> <example> Runs the SetServiceAccount operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: SetServiceAccount $query = New-RscMutationO365 -SetServiceAccount # REQUIRED $query.Var.username = $someString # REQUIRED $query.Var.appPassword = $someString # REQUIRED $query.Var.orgId = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestStatus </code> </example> <example> Runs the SetupKickoff operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: SetupKickoff $query = New-RscMutationO365 -SetupKickoff # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: O365SetupKickoffResp </code> </example> <example> Runs the UpdateAppAuthStatus operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: UpdateAppAuthStatus $query = New-RscMutationO365 -UpdateAppAuthStatus # REQUIRED $query.Var.input = @{ # REQUIRED o365OrgId = $someString # REQUIRED o365AppId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateO365AppAuthStatusReply </code> </example> <example> Runs the UpdateAppPermissions operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: UpdateAppPermissions $query = New-RscMutationO365 -UpdateAppPermissions # REQUIRED $query.Var.input = @{ # REQUIRED o365AppType = $someO365AppType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.O365AppType]) for enum values. # REQUIRED o365AppId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateOrgCustomName operation of the 'Office 365' API domain. <code> PS > # Create an RscQuery object for: # API Domain: O365 # API Operation: UpdateOrgCustomName $query = New-RscMutationO365 -UpdateOrgCustomName # REQUIRED $query.Var.input = @{ # REQUIRED orgUuid = $someString # REQUIRED customName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateO365OrgCustomNameReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationOracle"> <summary> 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. </summary> <description> 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. </description> <example> Runs the BulkUpdateDatabases operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: BulkUpdateDatabases $query = New-RscMutationOracle -BulkUpdateDatabases # REQUIRED $query.Var.input = @{ # REQUIRED bulkUpdateProperties = @{ # REQUIRED ids = @( $someString ) # OPTIONAL oracleUpdate = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL hostMount = $someString # OPTIONAL logBackupFrequencyInMinutes = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL numChannels = $someInt # OPTIONAL hostLogRetentionHours = $someInt # OPTIONAL configuredSlaDomainIdDeprecated = $someString # OPTIONAL shouldDistributeBackupsAutomatically = $someBoolean # OPTIONAL nodeOrder = @( @{ # REQUIRED nodeName = $someString # REQUIRED order = $someInt } ) # OPTIONAL oracleUpdateCommon = @{ # OPTIONAL hostLogRetentionHours = $someInt # OPTIONAL hostMount = $someString # OPTIONAL logBackupFrequencyInMinutes = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL numChannels = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL shouldEnableHighFileCountSupport = $someBoolean # OPTIONAL shouldUseSecureThriftForDataTransfer = $someBoolean # OPTIONAL sectionSizeInGb = $someInt # OPTIONAL isPaused = $someBoolean } } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateOracleDatabasesReply </code> </example> <example> Runs the BulkUpdateHosts operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: BulkUpdateHosts $query = New-RscMutationOracle -BulkUpdateHosts # REQUIRED $query.Var.input = @{ # REQUIRED bulkUpdateProperties = @{ # REQUIRED ids = @( $someString ) # OPTIONAL oracleUpdate = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL hostMount = $someString # OPTIONAL logBackupFrequencyInMinutes = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL numChannels = $someInt # OPTIONAL hostLogRetentionHours = $someInt # OPTIONAL configuredSlaDomainIdDeprecated = $someString # OPTIONAL shouldDistributeBackupsAutomatically = $someBoolean # OPTIONAL nodeOrder = @( @{ # REQUIRED nodeName = $someString # REQUIRED order = $someInt } ) # OPTIONAL oracleUpdateCommon = @{ # OPTIONAL hostLogRetentionHours = $someInt # OPTIONAL hostMount = $someString # OPTIONAL logBackupFrequencyInMinutes = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL numChannels = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL shouldEnableHighFileCountSupport = $someBoolean # OPTIONAL shouldUseSecureThriftForDataTransfer = $someBoolean # OPTIONAL sectionSizeInGb = $someInt # OPTIONAL isPaused = $someBoolean } } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateOracleHostsReply </code> </example> <example> Runs the BulkUpdateRacs operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: BulkUpdateRacs $query = New-RscMutationOracle -BulkUpdateRacs # REQUIRED $query.Var.input = @{ # REQUIRED bulkUpdateProperties = @{ # REQUIRED ids = @( $someString ) # OPTIONAL oracleUpdate = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL hostMount = $someString # OPTIONAL logBackupFrequencyInMinutes = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL numChannels = $someInt # OPTIONAL hostLogRetentionHours = $someInt # OPTIONAL configuredSlaDomainIdDeprecated = $someString # OPTIONAL shouldDistributeBackupsAutomatically = $someBoolean # OPTIONAL nodeOrder = @( @{ # REQUIRED nodeName = $someString # REQUIRED order = $someInt } ) # OPTIONAL oracleUpdateCommon = @{ # OPTIONAL hostLogRetentionHours = $someInt # OPTIONAL hostMount = $someString # OPTIONAL logBackupFrequencyInMinutes = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL numChannels = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL shouldEnableHighFileCountSupport = $someBoolean # OPTIONAL shouldUseSecureThriftForDataTransfer = $someBoolean # OPTIONAL sectionSizeInGb = $someInt # OPTIONAL isPaused = $someBoolean } } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BulkUpdateOracleRacsReply </code> </example> <example> Runs the CreatePdbRestore operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: CreatePdbRestore $query = New-RscMutationOracle -CreatePdbRestore # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED pdbsToRestore = @( $someString ) # REQUIRED recoveryPoint = @{ # OPTIONAL snapshotId = $someString # OPTIONAL timestampMs = $someInt64 } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteAllDatabaseSnapshots operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: DeleteAllDatabaseSnapshots $query = New-RscMutationOracle -DeleteAllDatabaseSnapshots # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteMount operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: DeleteMount $query = New-RscMutationOracle -DeleteMount # REQUIRED $query.Var.input = @{ # OPTIONAL force = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadDatabaseSnapshot operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: DownloadDatabaseSnapshot $query = New-RscMutationOracle -DownloadDatabaseSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadSnapshotFromLocation operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: DownloadSnapshotFromLocation $query = New-RscMutationOracle -DownloadSnapshotFromLocation # REQUIRED $query.Var.input = @{ # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DownloadSnapshotFromLocationV2 operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: DownloadSnapshotFromLocationV2 $query = New-RscMutationOracle -DownloadSnapshotFromLocationV2 # REQUIRED $query.Var.input = @{ # OPTIONAL downloadConfig = @{ # OPTIONAL slaId = $someString } # REQUIRED locationId = $someString # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExportDatabase operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: ExportDatabase $query = New-RscMutationOracle -ExportDatabase # REQUIRED $query.Var.input = @{ # REQUIRED request = @{ # REQUIRED config = @{ # OPTIONAL restoreFilesPath = $someString # OPTIONAL shouldRestoreFilesOnly = $someBoolean # OPTIONAL targetMountPath = $someString # OPTIONAL advancedRecoveryConfigBase64 = $someString # OPTIONAL archiveLogPath = $someString # OPTIONAL cloneDbName = $someString # OPTIONAL customPfilePath = $someString # OPTIONAL numChannels = $someInt # OPTIONAL postScriptPath = $someString # OPTIONAL preScriptPath = $someString # OPTIONAL shouldStopRecoveryOnPreScriptFailure = $someBoolean # OPTIONAL pdbsToClone = @( $someString ) # OPTIONAL shouldSkipDropDbInUndo = $someBoolean # OPTIONAL targetRacHostIds = @( $someString ) # OPTIONAL targetRacPrimaryHostId = $someString # OPTIONAL shouldAllowRenameToSource = $someBoolean # REQUIRED recoveryPoint = @{ # OPTIONAL snapshotId = $someString # OPTIONAL timestampMs = $someInt64 } # REQUIRED targetOracleHostOrRacId = $someString } # REQUIRED id = $someString } # OPTIONAL advancedRecoveryConfigMap = @( @{ # OPTIONAL key = $someString # OPTIONAL value = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExportTablespace operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: ExportTablespace $query = New-RscMutationOracle -ExportTablespace # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL exposeAllLogs = $someBoolean # REQUIRED auxiliaryDestinationPath = $someString # REQUIRED recoveryPoint = @{ # OPTIONAL snapshotId = $someString # OPTIONAL timestampMs = $someInt64 } # REQUIRED tablespaceName = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the InstantRecoverSnapshot operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: InstantRecoverSnapshot $query = New-RscMutationOracle -InstantRecoverSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL numChannels = $someInt # OPTIONAL shouldSkipDropDbInUndo = $someBoolean # REQUIRED recoveryPoint = @{ # OPTIONAL snapshotId = $someString # OPTIONAL timestampMs = $someInt64 } } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the MountDatabase operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: MountDatabase $query = New-RscMutationOracle -MountDatabase # REQUIRED $query.Var.input = @{ # REQUIRED request = @{ # REQUIRED config = @{ # OPTIONAL shouldMountFilesOnly = $someBoolean # OPTIONAL targetMountPath = $someString # OPTIONAL advancedRecoveryConfigBase64 = $someString # OPTIONAL customPfilePath = $someString # OPTIONAL numChannels = $someInt # OPTIONAL postScriptPath = $someString # OPTIONAL preScriptPath = $someString # OPTIONAL shouldStopRecoveryOnPreScriptFailure = $someBoolean # OPTIONAL pdbsToLiveMount = @( $someString ) # OPTIONAL targetRacHostIds = @( $someString ) # OPTIONAL shouldSkipDropDbInUndo = $someBoolean # OPTIONAL lmDbName = $someString # OPTIONAL targetRacPrimaryHostId = $someString # OPTIONAL shouldAllowRenameToSource = $someBoolean # REQUIRED recoveryPoint = @{ # OPTIONAL snapshotId = $someString # OPTIONAL timestampMs = $someInt64 } # REQUIRED targetOracleHostOrRacId = $someString } # REQUIRED id = $someString } # OPTIONAL advancedRecoveryConfigMap = @( @{ # OPTIONAL key = $someString # OPTIONAL value = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RefreshDatabase operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: RefreshDatabase $query = New-RscMutationOracle -RefreshDatabase # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RestoreLogs operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: RestoreLogs $query = New-RscMutationOracle -RestoreLogs # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL targetMountPath = $someString # REQUIRED oracleLogRecoveryRange = @{ # OPTIONAL oracleTimeRange = @{ # OPTIONAL endTime = $someDateTime # OPTIONAL startTime = $someDateTime } } # REQUIRED shouldMountFilesOnly = $someBoolean # REQUIRED targetOracleHostOrRacId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the TakeOnDemandDatabaseSnapshot operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: TakeOnDemandDatabaseSnapshot $query = New-RscMutationOracle -TakeOnDemandDatabaseSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL forceFullSnapshot = $someBoolean # OPTIONAL baseOnDemandSnapshotConfig = @{ # OPTIONAL slaId = $someString } } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the TakeOnDemandLogSnapshot operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: TakeOnDemandLogSnapshot $query = New-RscMutationOracle -TakeOnDemandLogSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the UpdateDataGuardGroup operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: UpdateDataGuardGroup $query = New-RscMutationOracle -UpdateDataGuardGroup # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED updateProperties = @{ # OPTIONAL preferredDgMemberUniqueNames = @( $someString ) # OPTIONAL shouldBackupFromPrimaryOnly = $someBoolean # OPTIONAL shouldUseSepsWallet = $someBoolean # OPTIONAL shouldForceDisableDgDiscovery = $someBoolean # OPTIONAL oracleUpdateCommon = @{ # OPTIONAL hostLogRetentionHours = $someInt # OPTIONAL hostMount = $someString # OPTIONAL logBackupFrequencyInMinutes = $someInt # OPTIONAL logRetentionHours = $someInt # OPTIONAL numChannels = $someInt # OPTIONAL hasLogConfigFromSla = $someBoolean # OPTIONAL shouldEnableHighFileCountSupport = $someBoolean # OPTIONAL shouldUseSecureThriftForDataTransfer = $someBoolean # OPTIONAL sectionSizeInGb = $someInt # OPTIONAL isPaused = $someBoolean } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: OracleDbDetail </code> </example> <example> Runs the ValidateAcoFile operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: ValidateAcoFile $query = New-RscMutationOracle -ValidateAcoFile # REQUIRED $query.Var.input = @{ # REQUIRED acoContentsBase64 = $someString # REQUIRED clusterUuid = $someString # REQUIRED isLiveMount = $someBoolean # REQUIRED dbId = $someString # OPTIONAL isDifferentTargetDbName = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ValidateOracleAcoFileReply </code> </example> <example> Runs the ValidateDatabaseBackups operation of the 'Oracle' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Oracle # API Operation: ValidateDatabaseBackups $query = New-RscMutationOracle -ValidateDatabaseBackups # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL numChannels = $someInt # OPTIONAL sgaMaxSizeInMb = $someInt64 # OPTIONAL targetMountPath = $someString # OPTIONAL targetOracleHome = $someString # REQUIRED recoveryPoint = @{ # OPTIONAL snapshotId = $someString # OPTIONAL timestampMs = $someInt64 } # REQUIRED targetOracleHostOrRacId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationPolicy"> <summary> Create a new RscQuery object for any of the 12 operations in the 'Policy' API domain: AddPolicyObjects, CreatePolicy, DeactivatePolicy, GetHealthMonitorPolicyStatus, RemovePolicyObjects, SeedEnabledPolicies, SeedInitialPolicies, SetPasswordComplexityPolicy, UpdateAutoEnablePolicyClusterConfig, UpdateHealthMonitorPolicyStatus, UpdateOrgSecurityPolicy, or UpdatePolicy. </summary> <description> New-RscMutationPolicy creates a new mutation object for operations in the 'Policy' API domain. It only creates a data structure, it does not execute the operation. This cmdlet does not need a connection to run. To execute the operation, either call Invoke() on the object returned by this cmdlet, or pass the object to Invoke-Rsc. There are 12 operations in the 'Policy' API domain. Select the operation this query is for by specifying the appropriate value for the -Operation parameter; one of: AddPolicyObjects, CreatePolicy, DeactivatePolicy, GetHealthMonitorPolicyStatus, RemovePolicyObjects, SeedEnabledPolicies, SeedInitialPolicies, SetPasswordComplexityPolicy, UpdateAutoEnablePolicyClusterConfig, UpdateHealthMonitorPolicyStatus, UpdateOrgSecurityPolicy, or UpdatePolicy. Each operation has its own set of variables that can be set with the -Var parameter. For more info about the variables, call Info() on the object returned by this cmdlet, for example: (New-RscMutationPolicy -AddPolicyObjects).Info(). Each operation also has its own set of fields that can be selected for retrieval. If you do not specify any fields, a set of default fields will be selected. The selection is rule-based, and tries to select the most commonly used fields. For example if a field is named 'id' or 'name', it will be selected. If you give -FieldProfile DETAIL, then another set of rules will be used to select more fields on top of the default fields. The set of rules for selecting fields is called a field profile. You can specify a field profile with the -FieldProfile parameter. You can add or remove fields from the field profile with the -AddField and -RemoveField parameters. If you end up with too many -AddField and -RemoveField parameters, you can list them in a text file, one per line, with a '+' or '-' prefix, and pass the file name to the -FilePatch parameter. Profiles and Patches are one way to customize the fields that are selected. Another way is to specify the fields by passing the -Field parameter an object that contains the fields you want to select as properties. Any property that is not null in that object is interpreted as a field to select (and the actual values they are set to do not matter). The [RubrikSecurityCloud.Types] namespace contains a set of classes that you can use to specify fields. To know what [RubrikSecurityCloud.Types] object to use for a specific operation, call Info() on the object returned by this cmdlet, for example: (New-RscMutationPolicy -AddPolicyObjects).Info(). You can combine a -Field parameter with patching parameters. -Field is applied first, then -FilePatch, -AddField and -RemoveField. </description> <example> Runs the AddPolicyObjects operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: AddPolicyObjects $query = New-RscMutationPolicy -AddPolicyObjects # REQUIRED $query.Var.policyIds = @( $someString ) # REQUIRED $query.Var.objectIds = @( $someString ) # REQUIRED $query.Var.objectRootIds = @( $someString ) # REQUIRED $query.Var.clusterIds = @( $someString ) # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the CreatePolicy operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: CreatePolicy $query = New-RscMutationPolicy -CreatePolicy # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL description = $someString # OPTIONAL colorEnum = $someClassificationPolicyColor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyColor]) for enum values. # OPTIONAL mode = $someClassificationPolicyMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyMode]) for enum values. # OPTIONAL analyzerIds = @( $someString ) # OPTIONAL updateName = $someBoolean # OPTIONAL updateDescription = $someBoolean # OPTIONAL updateMode = $someBoolean # OPTIONAL updateAnalyzerIds = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ClassificationPolicyDetail </code> </example> <example> Runs the DeactivatePolicy operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: DeactivatePolicy $query = New-RscMutationPolicy -DeactivatePolicy # REQUIRED $query.Var.policyId = $someString # REQUIRED $query.Var.runAsync = $someBoolean # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<System.String> </code> </example> <example> Runs the GetHealthMonitorPolicyStatus operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: GetHealthMonitorPolicyStatus $query = New-RscMutationPolicy -GetHealthMonitorPolicyStatus # REQUIRED $query.Var.input = @{ # OPTIONAL hasDetailedStatus = $someBoolean # OPTIONAL nodeIds = @( $someString ) # OPTIONAL policyIds = @( $someString ) # REQUIRED clusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GetHealthMonitorPolicyStatusReply </code> </example> <example> Runs the RemovePolicyObjects operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: RemovePolicyObjects $query = New-RscMutationPolicy -RemovePolicyObjects # REQUIRED $query.Var.policyIds = @( $someString ) # REQUIRED $query.Var.objectIds = @( $someString ) # REQUIRED $query.Var.objectRootIds = @( $someString ) # REQUIRED $query.Var.clusterIds = @( $someString ) # REQUIRED $query.Var.runAsync = $someBoolean # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<System.String> </code> </example> <example> Runs the SeedEnabledPolicies operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: SeedEnabledPolicies $query = New-RscMutationPolicy -SeedEnabledPolicies # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SeedEnabledPoliciesReply </code> </example> <example> Runs the SeedInitialPolicies operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: SeedInitialPolicies $query = New-RscMutationPolicy -SeedInitialPolicies # No variables for this query. # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SeedInitialPoliciesReply </code> </example> <example> Runs the SetPasswordComplexityPolicy operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: SetPasswordComplexityPolicy $query = New-RscMutationPolicy -SetPasswordComplexityPolicy # REQUIRED $query.Var.input = @{ # REQUIRED policy = @{ # REQUIRED lengthPolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } # REQUIRED lowercasePolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } # REQUIRED uppercasePolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } # REQUIRED specialCharsPolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } # REQUIRED numericPolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } # REQUIRED passwordReusePolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } # REQUIRED passwordExpirationPolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } # OPTIONAL leakedDetectionPolicy = @{ # OPTIONAL minValue = $someInt # OPTIONAL maxValue = $someInt # OPTIONAL defaultValue = $someInt # REQUIRED isActive = $someBoolean } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdateAutoEnablePolicyClusterConfig operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: UpdateAutoEnablePolicyClusterConfig $query = New-RscMutationPolicy -UpdateAutoEnablePolicyClusterConfig # REQUIRED $query.Var.input = @{ # OPTIONAL clusterId = $someString # OPTIONAL enabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateAutoEnablePolicyClusterConfigReply </code> </example> <example> Runs the UpdateHealthMonitorPolicyStatus operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: UpdateHealthMonitorPolicyStatus $query = New-RscMutationPolicy -UpdateHealthMonitorPolicyStatus # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED runRequest = @{ # OPTIONAL nodeIds = @( $someString ) # REQUIRED policyIds = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateHealthMonitorPolicyStatusReply </code> </example> <example> Runs the UpdateOrgSecurityPolicy operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: UpdateOrgSecurityPolicy $query = New-RscMutationPolicy -UpdateOrgSecurityPolicy # REQUIRED $query.Var.input = @{ # OPTIONAL disallowWeakerPolicy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the UpdatePolicy operation of the 'Policy' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Policy # API Operation: UpdatePolicy $query = New-RscMutationPolicy -UpdatePolicy # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL description = $someString # OPTIONAL colorEnum = $someClassificationPolicyColor # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyColor]) for enum values. # OPTIONAL mode = $someClassificationPolicyMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClassificationPolicyMode]) for enum values. # OPTIONAL analyzerIds = @( $someString ) # OPTIONAL updateName = $someBoolean # OPTIONAL updateDescription = $someBoolean # OPTIONAL updateMode = $someBoolean # OPTIONAL updateAnalyzerIds = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ClassificationPolicyDetail </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationRansomware"> <summary> Create a new RscQuery object for any of the 2 operations in the 'Ransomware' API domain: BulkUpdateInvestigationStatus, or TriggerDetection. </summary> <description> 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. </description> <example> Runs the BulkUpdateInvestigationStatus operation of the 'Ransomware' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Ransomware # API Operation: BulkUpdateInvestigationStatus $query = New-RscMutationRansomware -BulkUpdateInvestigationStatus # REQUIRED $query.Var.input = @{ # REQUIRED entities = @( @{ # REQUIRED entityType = $someDataThreatAnalyticsEnablementEntity # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DataThreatAnalyticsEnablementEntity]) for enum values. # REQUIRED entityId = $someString } ) # REQUIRED isRansomwareMonitoringEnabled = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the TriggerDetection operation of the 'Ransomware' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Ransomware # API Operation: TriggerDetection $query = New-RscMutationRansomware -TriggerDetection # REQUIRED $query.Var.input = @{ # OPTIONAL clusterUuid = $someString # OPTIONAL snapshotId = $someString # OPTIONAL managedId = $someString # OPTIONAL previousSnapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TriggerRansomwareDetectionReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationRcs"> <summary> Create a new RscQuery object for any of the 4 operations in the 'RCS' API domain: CreateAutomaticRcsTargetMapping, CreateRcsReaderTarget, CreateRcsTarget, or UpdateRcsAutomaticTargetMapping. </summary> <description> 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. </description> <example> Runs the CreateAutomaticRcsTargetMapping operation of the 'RCS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcs # API Operation: CreateAutomaticRcsTargetMapping $query = New-RscMutationRcs -CreateAutomaticRcsTargetMapping # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED region = $someRcsRegionEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsRegionEnumType]) for enum values. # OPTIONAL rsaKey = $someString # REQUIRED tier = $someRcsTierEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsTierEnumType]) for enum values. # OPTIONAL lockDurationDays = $someInt64 # OPTIONAL clusterUuidList = @( $someString ) # OPTIONAL ipMapping = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED ips = @( $someString ) } ) # OPTIONAL shouldBypassProxy = $someBoolean # OPTIONAL redundancy = $someRcvRedundancy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcvRedundancy]) for enum values. # OPTIONAL azureKeyVaultKey = @{ # REQUIRED kmsKeyVaultId = $someString # REQUIRED keyName = $someString # REQUIRED keyVersion = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> <example> Runs the CreateRcsReaderTarget operation of the 'RCS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcs # API Operation: CreateRcsReaderTarget $query = New-RscMutationRcs -CreateRcsReaderTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED readerLocationName = $someString # REQUIRED rcsArchivalLocationName = $someString # REQUIRED readerRetrievalMethod = $someReaderRetrievalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReaderRetrievalMethod]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the CreateRcsTarget operation of the 'RCS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcs # API Operation: CreateRcsTarget $query = New-RscMutationRcs -CreateRcsTarget # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED name = $someString # REQUIRED tier = $someRcsTierEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsTierEnumType]) for enum values. # REQUIRED instanceType = $someInstanceTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.InstanceTypeEnum]) for enum values. # REQUIRED rsaKey = $someString # REQUIRED region = $someRcsRegionEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsRegionEnumType]) for enum values. # REQUIRED spaceUsageAlertThreshold = $someInt # REQUIRED lockDurationDays = $someInt64 # OPTIONAL shouldBypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> <example> Runs the UpdateRcsAutomaticTargetMapping operation of the 'RCS' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcs # API Operation: UpdateRcsAutomaticTargetMapping $query = New-RscMutationRcs -UpdateRcsAutomaticTargetMapping # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # REQUIRED lockDurationDays = $someInt64 # OPTIONAL clusterUuidList = @( $someString ) # OPTIONAL shouldBypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TargetMapping </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationRcv"> <summary> Create a new RscQuery object for any of the 4 operations in the 'RCV' API domain: ApprovePrivateEndpoint, CreateLocationsFromTemplate, CreatePrivateEndpointApprovalRequest, or UpdateTarget. </summary> <description> 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. </description> <example> Runs the ApprovePrivateEndpoint operation of the 'RCV' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcv # API Operation: ApprovePrivateEndpoint $query = New-RscMutationRcv -ApprovePrivateEndpoint # REQUIRED $query.Var.input = @{ # REQUIRED locationId = $someString # REQUIRED privateEndpointId = $someString # REQUIRED requestMessage = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ApproveRcvPrivateEndpointReply </code> </example> <example> Runs the CreateLocationsFromTemplate operation of the 'RCV' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcv # API Operation: CreateLocationsFromTemplate $query = New-RscMutationRcv -CreateLocationsFromTemplate # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED region = $someRcsRegionEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsRegionEnumType]) for enum values. # REQUIRED tier = $someRcsTierEnumType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcsTierEnumType]) for enum values. # OPTIONAL lockDurationDays = $someInt64 # OPTIONAL clusterUuidList = @( $someString ) # OPTIONAL ipMapping = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED ips = @( $someString ) } ) # OPTIONAL shouldBypassProxy = $someBoolean # OPTIONAL redundancy = $someRcvRedundancy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RcvRedundancy]) for enum values. # OPTIONAL rsaKey = $someString # OPTIONAL azureKeyVaultKey = @{ # REQUIRED kmsKeyVaultId = $someString # REQUIRED keyName = $someString # REQUIRED keyVersion = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<Target> </code> </example> <example> Runs the CreatePrivateEndpointApprovalRequest operation of the 'RCV' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcv # API Operation: CreatePrivateEndpointApprovalRequest $query = New-RscMutationRcv -CreatePrivateEndpointApprovalRequest # REQUIRED $query.Var.input = @{ # REQUIRED locationId = $someString # REQUIRED privateEndpointId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateRcvPrivateEndpointApprovalRequestReply </code> </example> <example> Runs the UpdateTarget operation of the 'RCV' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Rcv # API Operation: UpdateTarget $query = New-RscMutationRcv -UpdateTarget # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL name = $someString # REQUIRED lockDurationDays = $someInt64 # OPTIONAL ipMapping = @{ # REQUIRED clusterUuid = $someString # REQUIRED ips = @( $someString ) } # OPTIONAL shouldBypassProxy = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: Target </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationReplication"> <summary> Create a new RscQuery object for any of the 6 operations in the 'Replication' API domain: CreatePair, DeletePair, DisablePause, EnablePause, UpdateNetworkThrottleBypass, or UpdateTarget. </summary> <description> 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. </description> <example> Runs the CreatePair operation of the 'Replication' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Replication # API Operation: CreatePair $query = New-RscMutationReplication -CreatePair # REQUIRED $query.Var.input = @{ # OPTIONAL sourceGateway = @{ # REQUIRED address = $someString # REQUIRED ports = @( $someInt ) } # OPTIONAL targetGateway = @{ # REQUIRED address = $someString # REQUIRED ports = @( $someInt ) } # OPTIONAL targetNetworkInterface = @{ # OPTIONAL type = $someReplicationInterfaceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationInterfaceType]) for enum values. } # OPTIONAL networkInterface = @{ # OPTIONAL targetInterfaceName = $someString # OPTIONAL sourceInterfaceName = $someString } # REQUIRED sourceClusterUuid = $someString # REQUIRED targetClusterUuid = $someString # REQUIRED setupType = $someReplicationSetupType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationSetupType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeletePair operation of the 'Replication' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Replication # API Operation: DeletePair $query = New-RscMutationReplication -DeletePair # REQUIRED $query.Var.input = @{ # OPTIONAL forceDelete = $someBoolean # REQUIRED sourceClusterUuid = $someString # REQUIRED targetClusterUuid = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DisablePause operation of the 'Replication' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Replication # API Operation: DisablePause $query = New-RscMutationReplication -DisablePause # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED disablePerLocationPause = @{ # REQUIRED shouldSkipOldSnapshots = $someBoolean # REQUIRED sourceClusterUuids = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the EnablePause operation of the 'Replication' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Replication # API Operation: EnablePause $query = New-RscMutationReplication -EnablePause # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED enablePerLocationPause = @{ # OPTIONAL shouldPauseImmediately = $someBoolean # REQUIRED shouldCancelImmediately = $someBoolean # REQUIRED sourceClusterUuids = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the UpdateNetworkThrottleBypass operation of the 'Replication' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Replication # API Operation: UpdateNetworkThrottleBypass $query = New-RscMutationReplication -UpdateNetworkThrottleBypass # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # REQUIRED shouldBypassReplicationThrottle = $someBoolean } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the UpdateTarget operation of the 'Replication' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Replication # API Operation: UpdateTarget $query = New-RscMutationReplication -UpdateTarget # REQUIRED $query.Var.input = @{ # OPTIONAL sourceGateway = @{ # REQUIRED address = $someString # REQUIRED ports = @( $someInt ) } # OPTIONAL targetGateway = @{ # REQUIRED address = $someString # REQUIRED ports = @( $someInt ) } # OPTIONAL targetNetworkInterface = @{ # OPTIONAL type = $someReplicationInterfaceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationInterfaceType]) for enum values. } # OPTIONAL networkInterface = @{ # OPTIONAL targetInterfaceName = $someString # OPTIONAL sourceInterfaceName = $someString } # REQUIRED sourceClusterUuid = $someString # REQUIRED targetClusterUuid = $someString # REQUIRED setupType = $someReplicationSetupType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationSetupType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationReport"> <summary> 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. </summary> <description> 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. </description> <example> Runs the CreateCustom operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: CreateCustom $query = New-RscMutationReport -CreateCustom # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL charts = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) } ) # OPTIONAL tables = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) # REQUIRED selectedColumns = @( $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values. ) # OPTIONAL sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values. # OPTIONAL sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values. } ) # REQUIRED filters = @{ # OPTIONAL activityObjectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL objectType = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL excludedObjectTypes = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL lastActivityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL lastActivityType = @( $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values. ) # OPTIONAL slaDomainId = @( $someString ) # OPTIONAL clusterType = @( $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values. ) # OPTIONAL clusterId = @( $someString ) # OPTIONAL timeRange = @{ # OPTIONAL relativeTimeRange = @{ # REQUIRED magnitude = $someInt # REQUIRED unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values. } # OPTIONAL absoluteTimeRange = @{ # REQUIRED start = $someDateTime # REQUIRED end = $someDateTime } } # OPTIONAL slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values. # OPTIONAL orgId = @( $someString ) # OPTIONAL managedId = @( $someString ) # OPTIONAL isAnomaly = $someBoolean # OPTIONAL searchTerm = $someString # OPTIONAL complianceStatus = @( $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values. ) # OPTIONAL protectionStatus = @( $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values. ) # OPTIONAL failoverStatus = @( $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values. ) # OPTIONAL failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values. # OPTIONAL source = @( $someString ) # OPTIONAL targetSite = @( $someString ) # OPTIONAL userAuditObjectType = @( $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values. ) # OPTIONAL userAuditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL userAuditStatus = @( $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values. ) # OPTIONAL replicationSource = @( $someString ) # OPTIONAL clusterLocation = @( $someString ) # OPTIONAL taskCategory = @( $someString ) # OPTIONAL taskStatus = @( $someString ) # OPTIONAL taskType = @( $someString ) # OPTIONAL policyId = @( $someString ) # OPTIONAL sonarObjectTypes = @( $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values. ) # OPTIONAL shouldApplyWhitelists = $someBoolean # OPTIONAL date = $someDateTime } # OPTIONAL isHidden = $someBoolean # OPTIONAL isReadOnly = $someBoolean } # OPTIONAL $query.Var.reportRoom = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateCustomReportReply </code> </example> <example> Runs the CreateScheduled operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: CreateScheduled $query = New-RscMutationReport -CreateScheduled # REQUIRED $query.Var.input = @{ # REQUIRED reportId = $someInt # REQUIRED title = $someString # OPTIONAL dailyTime = $someDateTime # OPTIONAL weeklyTime = $someDateTime # OPTIONAL monthlyDate = $someInt # OPTIONAL monthlyTime = $someDateTime # REQUIRED rubrikRecipientUserIds = @( $someString ) # REQUIRED nonRubrikRecipientEmails = @( $someString ) # OPTIONAL updateCreator = $someBoolean # OPTIONAL timeZone = $someString # OPTIONAL weeklyDays = @( $someWeekDay # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WeekDay]) for enum values. ) # OPTIONAL attachmentTypes = @( $someReportAttachmentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportAttachmentType]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateScheduledReportReply </code> </example> <example> Runs the DeleteCustom operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: DeleteCustom $query = New-RscMutationReport -DeleteCustom # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the DeleteScheduledReport operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: DeleteScheduledReport $query = New-RscMutationReport -DeleteScheduledReport # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt # OPTIONAL reportId = $someInt } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the SendPdf operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: SendPdf $query = New-RscMutationReport -SendPdf # REQUIRED $query.Var.input = @{ # REQUIRED rubrikRecipientUserIds = @( $someString ) # REQUIRED nonRubrikRecipientEmailIds = @( $someString ) # REQUIRED password = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SendPdfReportReply </code> </example> <example> Runs the SendScheduledReportAsync operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: SendScheduledReportAsync $query = New-RscMutationReport -SendScheduledReportAsync # REQUIRED $query.Var.input = @{ # REQUIRED reportId = $someInt # OPTIONAL rubrikUserIds = @( $someString ) # OPTIONAL nonRubrikUserEmails = @( $someString ) # OPTIONAL attachmentTypes = @( $someReportAttachmentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportAttachmentType]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncDownloadReply </code> </example> <example> Runs the StartClusterMigrationJob operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: StartClusterMigrationJob $query = New-RscMutationReport -StartClusterMigrationJob # REQUIRED $query.Var.input = @{ # OPTIONAL clusterUuid = $someString # OPTIONAL shouldDeleteCdmSchedules = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: StartClusterReportMigrationJobReply </code> </example> <example> Runs the UpdateCustom operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: UpdateCustom $query = New-RscMutationReport -UpdateCustom # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt # REQUIRED config = @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL charts = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) } ) # OPTIONAL tables = @( @{ # REQUIRED name = $someString # REQUIRED focus = $someReportFocusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportFocusEnum]) for enum values. # OPTIONAL groupBy = @( $someGroupByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GroupByFieldEnum]) for enum values. ) # REQUIRED selectedColumns = @( $someReportTableColumnEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportTableColumnEnum]) for enum values. ) # OPTIONAL sortBy = $someSortByFieldEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortByFieldEnum]) for enum values. # OPTIONAL sortOrder = $someSortOrder # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SortOrder]) for enum values. } ) # REQUIRED filters = @{ # OPTIONAL activityObjectType = @( $someActivityObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityObjectTypeEnum]) for enum values. ) # OPTIONAL objectType = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL excludedObjectTypes = @( $someObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ObjectTypeEnum]) for enum values. ) # OPTIONAL lastActivityStatus = @( $someActivityStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityStatusEnum]) for enum values. ) # OPTIONAL lastActivityType = @( $someActivityTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ActivityTypeEnum]) for enum values. ) # OPTIONAL slaDomainId = @( $someString ) # OPTIONAL clusterType = @( $someClusterTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ClusterTypeEnum]) for enum values. ) # OPTIONAL clusterId = @( $someString ) # OPTIONAL timeRange = @{ # OPTIONAL relativeTimeRange = @{ # REQUIRED magnitude = $someInt # REQUIRED unit = $someTimeUnitEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.TimeUnitEnum]) for enum values. } # OPTIONAL absoluteTimeRange = @{ # REQUIRED start = $someDateTime # REQUIRED end = $someDateTime } } # OPTIONAL slaTimeRange = $someSlaComplianceTimeRange # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaComplianceTimeRange]) for enum values. # OPTIONAL orgId = @( $someString ) # OPTIONAL managedId = @( $someString ) # OPTIONAL isAnomaly = $someBoolean # OPTIONAL searchTerm = $someString # OPTIONAL complianceStatus = @( $someComplianceStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ComplianceStatusEnum]) for enum values. ) # OPTIONAL protectionStatus = @( $someProtectionStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ProtectionStatusEnum]) for enum values. ) # OPTIONAL failoverStatus = @( $someFailoverStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverStatusEnum]) for enum values. ) # OPTIONAL failoverType = $someFailoverTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.FailoverTypeEnum]) for enum values. # OPTIONAL source = @( $someString ) # OPTIONAL targetSite = @( $someString ) # OPTIONAL userAuditObjectType = @( $someUserAuditObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditObjectTypeEnum]) for enum values. ) # OPTIONAL userAuditType = @( $someUserAuditTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditTypeEnum]) for enum values. ) # OPTIONAL userAuditStatus = @( $someUserAuditStatusEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.UserAuditStatusEnum]) for enum values. ) # OPTIONAL replicationSource = @( $someString ) # OPTIONAL clusterLocation = @( $someString ) # OPTIONAL taskCategory = @( $someString ) # OPTIONAL taskStatus = @( $someString ) # OPTIONAL taskType = @( $someString ) # OPTIONAL policyId = @( $someString ) # OPTIONAL sonarObjectTypes = @( $someHierarchyObjectTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.HierarchyObjectTypeEnum]) for enum values. ) # OPTIONAL shouldApplyWhitelists = $someBoolean # OPTIONAL date = $someDateTime } # OPTIONAL isHidden = $someBoolean # OPTIONAL isReadOnly = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateCustomReportReply </code> </example> <example> Runs the UpdateDatabaseLogingPropertiesForCluster operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: UpdateDatabaseLogingPropertiesForCluster $query = New-RscMutationReport -UpdateDatabaseLogingPropertiesForCluster # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED properties = @{ # OPTIONAL enableDelayNotification = $someBoolean # OPTIONAL logDelayThresholdInMin = $someInt64 # OPTIONAL logDelayNotificationFrequencyInMin = $someInt64 } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DbLogReportProperties </code> </example> <example> Runs the UpdateScheduledReport operation of the 'Report' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Report # API Operation: UpdateScheduledReport $query = New-RscMutationReport -UpdateScheduledReport # REQUIRED $query.Var.input = @{ # REQUIRED id = $someInt # REQUIRED config = @{ # REQUIRED reportId = $someInt # REQUIRED title = $someString # OPTIONAL dailyTime = $someDateTime # OPTIONAL weeklyTime = $someDateTime # OPTIONAL monthlyDate = $someInt # OPTIONAL monthlyTime = $someDateTime # REQUIRED rubrikRecipientUserIds = @( $someString ) # REQUIRED nonRubrikRecipientEmails = @( $someString ) # OPTIONAL timeZone = $someString # OPTIONAL updateCreator = $someBoolean # OPTIONAL weeklyDays = @( $someWeekDay # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WeekDay]) for enum values. ) # OPTIONAL attachmentTypes = @( $someReportAttachmentType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReportAttachmentType]) for enum values. ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateScheduledReportReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationSapHana"> <summary> 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. </summary> <description> 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. </description> <example> Runs the AddSystem operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: AddSystem $query = New-RscMutationSapHana -AddSystem # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED sapHanaSystem = @{ # OPTIONAL azureFeatureId = $someString # OPTIONAL authTypeSpec = @{ # REQUIRED authType = $someSapHanaSystemAuthTypeSpecAuthType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSystemAuthTypeSpecAuthType]) for enum values. } # OPTIONAL dataPathSpec = @{ # OPTIONAL dataPathType = $someSapHanaDataPathType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaDataPathType]) for enum values. } # REQUIRED hostIds = @( $someString ) # REQUIRED instanceNumber = $someString # REQUIRED password = $someString # REQUIRED sid = $someString # OPTIONAL sslInfo = @{ # OPTIONAL cryptoLibPath = $someString # OPTIONAL hostNameInCertificate = $someString # OPTIONAL shouldEncrypt = $someBoolean # OPTIONAL shouldValidateCertificate = $someBoolean # OPTIONAL trustStorePath = $someString # REQUIRED encryptionProvider = $someSapHanaSslInfoEncryptionProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSslInfoEncryptionProvider]) for enum values. # REQUIRED keyStorePath = $someString } # REQUIRED username = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddSapHanaSystemReply </code> </example> <example> Runs the ConfigureRestore operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: ConfigureRestore $query = New-RscMutationSapHana -ConfigureRestore # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED sourceConfig = @{ # OPTIONAL snappableId = $someString } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateOnDemandBackup operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: CreateOnDemandBackup $query = New-RscMutationSapHana -CreateOnDemandBackup # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateOnDemandStorageSnapshot operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: CreateOnDemandStorageSnapshot $query = New-RscMutationSapHana -CreateOnDemandStorageSnapshot # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateSystemRefresh operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: CreateSystemRefresh $query = New-RscMutationSapHana -CreateSystemRefresh # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteDbSnapshot operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: DeleteDbSnapshot $query = New-RscMutationSapHana -DeleteDbSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the DeleteSystem operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: DeleteSystem $query = New-RscMutationSapHana -DeleteSystem # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the ExpireDownloadedSnapshots operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: ExpireDownloadedSnapshots $query = New-RscMutationSapHana -ExpireDownloadedSnapshots # REQUIRED $query.Var.input = @{ # OPTIONAL afterTime = $someDateTime # OPTIONAL beforeTime = $someDateTime # OPTIONAL shouldExpireLogsOnly = $someBoolean # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the PatchSystem operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: PatchSystem $query = New-RscMutationSapHana -PatchSystem # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # REQUIRED updateProperties = @{ # OPTIONAL configuredSlaDomainId = $someString # OPTIONAL hostIds = @( $someString ) # OPTIONAL instanceNumber = $someString # OPTIONAL password = $someString # OPTIONAL sid = $someString # OPTIONAL username = $someString # OPTIONAL azureFeatureId = $someString # OPTIONAL authTypeSpec = @{ # REQUIRED authType = $someSapHanaSystemAuthTypeSpecAuthType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSystemAuthTypeSpecAuthType]) for enum values. } # OPTIONAL sslInfo = @{ # OPTIONAL cryptoLibPath = $someString # OPTIONAL hostNameInCertificate = $someString # OPTIONAL shouldEncrypt = $someBoolean # OPTIONAL shouldValidateCertificate = $someBoolean # OPTIONAL trustStorePath = $someString # REQUIRED encryptionProvider = $someSapHanaSslInfoEncryptionProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SapHanaSslInfoEncryptionProvider]) for enum values. # REQUIRED keyStorePath = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PatchSapHanaSystemReply </code> </example> <example> Runs the RestoreSystemStorage operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: RestoreSystemStorage $query = New-RscMutationSapHana -RestoreSystemStorage # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # REQUIRED snapshotId = $someString } # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the UnconfigureRestore operation of the 'SAP HANA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: SapHana # API Operation: UnconfigureRestore $query = New-RscMutationSapHana -UnconfigureRestore # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationServiceAccount"> <summary> Create a new RscQuery object for any of the 4 operations in the 'Service Account' API domain: Create, Delete, Rotate, or Update. </summary> <description> 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. </description> <example> Runs the Create operation of the 'Service Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ServiceAccount # API Operation: Create $query = New-RscMutationServiceAccount -Create # REQUIRED $query.Var.input = @{ # REQUIRED name = $someString # OPTIONAL description = $someString # REQUIRED roleIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: CreateServiceAccountReply </code> </example> <example> Runs the Delete operation of the 'Service Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ServiceAccount # API Operation: Delete $query = New-RscMutationServiceAccount -Delete # REQUIRED $query.Var.input = @{ # REQUIRED ids = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the Rotate operation of the 'Service Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ServiceAccount # API Operation: Rotate $query = New-RscMutationServiceAccount -Rotate # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RotateServiceAccountSecretReply </code> </example> <example> Runs the Update operation of the 'Service Account' API domain. <code> PS > # Create an RscQuery object for: # API Domain: ServiceAccount # API Operation: Update $query = New-RscMutationServiceAccount -Update # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL description = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateServiceAccountReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationSharepoint"> <summary> Create a new RscQuery object for any of the 1 operations in the 'Sharepoint' API domain: ['ExcludeObjectsFromProtection']. </summary> <description> 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. </description> <example> Runs the ExcludeObjectsFromProtection operation of the 'Sharepoint' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sharepoint # API Operation: ExcludeObjectsFromProtection $query = New-RscMutationSharepoint -ExcludeObjectsFromProtection # REQUIRED $query.Var.input = @{ # REQUIRED orgId = $someString # REQUIRED exclusions = @( @{ # REQUIRED siteFid = $someString # REQUIRED excludedObjects = @( @{ # REQUIRED fid = $someString # REQUIRED name = $someString # REQUIRED url = $someString # REQUIRED objectType = $someSharePointDescendantType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SharePointDescendantType]) for enum values. } ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationSla"> <summary> 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. </summary> <description> 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. </description> <example> Runs the Assign operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: Assign $query = New-RscMutationSla -Assign # REQUIRED $query.Var.input = @{ # REQUIRED slaDomainAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values. # OPTIONAL slaOptionalId = $someString # REQUIRED objectIds = @( $someString ) # OPTIONAL applicableWorkloadType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. # OPTIONAL shouldApplyToExistingSnapshots = $someBoolean # OPTIONAL shouldApplyToNonPolicySnapshots = $someBoolean # OPTIONAL existingSnapshotRetention = $someGlobalExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalExistingSnapshotRetention]) for enum values. # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SlaAssignResult </code> </example> <example> Runs the AssignRetentionToSnappables operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: AssignRetentionToSnappables $query = New-RscMutationSla -AssignRetentionToSnappables # OPTIONAL $query.Var.globalSlaOptionalFid = $someString # REQUIRED $query.Var.globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values. # REQUIRED $query.Var.objectIds = @( $someString ) # OPTIONAL $query.Var.applicableSnappableType = $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. # OPTIONAL $query.Var.shouldApplyToNonPolicySnapshots = $someBoolean # OPTIONAL $query.Var.userNote = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SlaAssignResult </code> </example> <example> Runs the AssignRetentionToSnapshots operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: AssignRetentionToSnapshots $query = New-RscMutationSla -AssignRetentionToSnapshots # OPTIONAL $query.Var.globalSlaOptionalFid = $someString # REQUIRED $query.Var.globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values. # REQUIRED $query.Var.snapshotFids = @( $someString ) # OPTIONAL $query.Var.userNote = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SlaAssignResult </code> </example> <example> Runs the AssignsForSnappableHierarchies operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: AssignsForSnappableHierarchies $query = New-RscMutationSla -AssignsForSnappableHierarchies # OPTIONAL $query.Var.globalSlaOptionalFid = $someString # REQUIRED $query.Var.globalSlaAssignType = $someSlaAssignTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaAssignTypeEnum]) for enum values. # REQUIRED $query.Var.objectIds = @( $someString ) # OPTIONAL $query.Var.applicableSnappableTypes = @( $someWorkloadLevelHierarchy # Call [Enum]::GetValues([RubrikSecurityCloud.Types.WorkloadLevelHierarchy]) for enum values. ) # OPTIONAL $query.Var.shouldApplyToExistingSnapshots = $someBoolean # OPTIONAL $query.Var.shouldApplyToNonPolicySnapshots = $someBoolean # OPTIONAL $query.Var.globalExistingSnapshotRetention = $someGlobalExistingSnapshotRetention # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GlobalExistingSnapshotRetention]) for enum values. # OPTIONAL $query.Var.userNote = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: List<SlaAssignResult> </code> </example> <example> Runs the CreateGlobal operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: CreateGlobal $query = New-RscMutationSla -CreateGlobal # REQUIRED $query.Var.input = @{ # OPTIONAL name = $someString # OPTIONAL description = $someString # OPTIONAL snapshotSchedule = @{ # OPTIONAL minute = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL hourly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL daily = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL weekly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfWeek = $someDayOfWeek # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfWeek]) for enum values. } # OPTIONAL monthly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfMonth = $someDayOfMonth # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfMonth]) for enum values. } # OPTIONAL quarterly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfQuarter = $someDayOfQuarter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfQuarter]) for enum values. # OPTIONAL quarterStartMonth = $someMonth # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Month]) for enum values. } # OPTIONAL yearly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfYear = $someDayOfYear # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfYear]) for enum values. # OPTIONAL yearStartMonth = $someMonth # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Month]) for enum values. } } # OPTIONAL replicationSpecInput = @{ # OPTIONAL replicationType = $someReplicationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationType]) for enum values. # OPTIONAL specificReplicationSpecInput = @{ # OPTIONAL unidirectionalSpecInput = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL bidirectionalSpecInput = @{ # OPTIONAL replicationSpec1 = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL replicationSpec2 = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL cloudRegionSpecInput = @{ # OPTIONAL replicationTargetRegion = $someString # OPTIONAL cloudProvider = $someCloudProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudProvider]) for enum values. # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL cloudLocationSpecInput = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL cloudProvider = $someCloudProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudProvider]) for enum values. # OPTIONAL retentionDuration = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } } # OPTIONAL localRetentionLimit = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL firstFullBackupWindows = @( @{ # OPTIONAL durationInHours = $someInt # OPTIONAL startTimeAttributes = @{ # OPTIONAL dayOfWeek = @{ # OPTIONAL day = $someDayOfWeek # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfWeek]) for enum values. } # OPTIONAL hour = $someInt # OPTIONAL minute = $someInt } } ) # OPTIONAL backupWindows = @( @{ # OPTIONAL durationInHours = $someInt # OPTIONAL startTimeAttributes = @{ # OPTIONAL dayOfWeek = @{ # OPTIONAL day = $someDayOfWeek # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfWeek]) for enum values. } # OPTIONAL hour = $someInt # OPTIONAL minute = $someInt } } ) # OPTIONAL logConfig = @{ # OPTIONAL slaLogFrequencyConfig = @{ # OPTIONAL retention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } # OPTIONAL objectSpecificConfigsInput = @{ # OPTIONAL sapHanaConfigInput = @{ # OPTIONAL incrementalFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL differentialFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL storageSnapshotConfig = @{ # OPTIONAL frequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL retention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } # OPTIONAL awsRdsConfigInput = @{ # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL vmwareVmConfigInput = @{ # OPTIONAL logRetentionSeconds = $someInt64 } # OPTIONAL azureSqlDatabaseDbConfigInput = @{ # OPTIONAL logRetentionInDays = $someInt } # OPTIONAL azureSqlManagedInstanceDbConfigInput = @{ # OPTIONAL logRetentionInDays = $someInt } # OPTIONAL db2ConfigInput = @{ # OPTIONAL incrementalFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL differentialFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logArchivalMethod = $someLogArchivalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LogArchivalMethod]) for enum values. } # OPTIONAL mssqlConfigInput = @{ # OPTIONAL frequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL oracleConfigInput = @{ # OPTIONAL frequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL hostLogRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL mongoConfigInput = @{ # OPTIONAL logFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL azureBlobConfigInput = @{ # OPTIONAL continuousBackupRetentionInDays = $someInt # OPTIONAL backupLocationId = $someString } # OPTIONAL awsNativeS3SlaConfigInput = @{ # OPTIONAL archivalLocationId = $someString # OPTIONAL continuousBackupRetentionInDays = $someInt } # OPTIONAL managedVolumeSlaConfigInput = @{ # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL postgresDbClusterSlaConfigInput = @{ # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL mysqldbConfigInput = @{ # OPTIONAL logFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } # OPTIONAL archivalSpecs = @( @{ # OPTIONAL archivalGroupId = $someString # OPTIONAL threshold = $someInt # OPTIONAL thresholdUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. # OPTIONAL archivalTieringSpecInput = @{ # OPTIONAL isInstantTieringEnabled = $someBoolean # OPTIONAL minAccessibleDurationInSeconds = $someInt64 # OPTIONAL coldStorageClass = $someColdStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ColdStorageClass]) for enum values. # OPTIONAL shouldTierExistingSnapshots = $someBoolean } # OPTIONAL frequencies = @( $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. ) # OPTIONAL archivalLocationToClusterMapping = @( @{ # OPTIONAL clusterUuid = $someString # OPTIONAL locationId = $someString } ) } ) # OPTIONAL replicationSpecsV2 = @( @{ # OPTIONAL clusterUuid = $someString # OPTIONAL storageSettingId = $someString # OPTIONAL retentionDuration = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL awsAccount = $someString # OPTIONAL azureSubscription = $someString # OPTIONAL replicationLocalRetentionDuration = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL cascadingArchivalSpecs = @( @{ # OPTIONAL archivalLocationId = $someString # OPTIONAL archivalThreshold = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL archivalTieringSpecInput = @{ # OPTIONAL isInstantTieringEnabled = $someBoolean # OPTIONAL minAccessibleDurationInSeconds = $someInt64 # OPTIONAL coldStorageClass = $someColdStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ColdStorageClass]) for enum values. # OPTIONAL shouldTierExistingSnapshots = $someBoolean } # OPTIONAL frequency = @( $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. ) # OPTIONAL archivalLocationToClusterMapping = @( @{ # OPTIONAL clusterUuid = $someString # OPTIONAL locationId = $someString } ) } ) # OPTIONAL replicationPairs = @( @{ # REQUIRED sourceClusterUuid = $someString # REQUIRED targetClusterUuid = $someString } ) # OPTIONAL awsRegion = $someAwsNativeRegionForReplication # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegionForReplication]) for enum values. # OPTIONAL azureRegion = $someAzureNativeRegionForReplication # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegionForReplication]) for enum values. } ) # OPTIONAL objectTypes = @( $someSlaObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaObjectType]) for enum values. ) # OPTIONAL isRetentionLockedSla = $someBoolean # OPTIONAL retentionLockMode = $someRetentionLockMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionLockMode]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GlobalSlaReply </code> </example> <example> Runs the DeleteGlobal operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: DeleteGlobal $query = New-RscMutationSla -DeleteGlobal # REQUIRED $query.Var.id = $someString # OPTIONAL $query.Var.userNote = $someString # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: SlaResult </code> </example> <example> Runs the ExportManagedVolumeSnapshot operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: ExportManagedVolumeSnapshot $query = New-RscMutationSla -ExportManagedVolumeSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL params = @{ # OPTIONAL shouldDownloadToLocal = $someBoolean # OPTIONAL managedVolumeSlaExportConfig = @{ # REQUIRED hostId = $someString # REQUIRED hostMountPaths = @( $someString ) # OPTIONAL managedVolumeExportConfig = @{ # OPTIONAL subnet = $someString # OPTIONAL shareType = $someManagedVolumeShareType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ManagedVolumeShareType]) for enum values. # OPTIONAL managedVolumePatchConfig = @{ # OPTIONAL hostPatterns = @( $someString ) # OPTIONAL nodeHint = @( $someString ) # OPTIONAL smbDomainName = $someString # OPTIONAL smbValidIps = @( $someString ) # OPTIONAL smbValidUsers = @( $someString ) } } } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the GetPendingAssignments operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: GetPendingAssignments $query = New-RscMutationSla -GetPendingAssignments # REQUIRED $query.Var.input = @{ # REQUIRED pendingAssignmentsRequest = @{ # REQUIRED objectIds = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GetPendingSlaAssignmentsReply </code> </example> <example> Runs the Pause operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: Pause $query = New-RscMutationSla -Pause # REQUIRED $query.Var.input = @{ # REQUIRED slaId = $someString # REQUIRED clusterUuids = @( $someString ) # REQUIRED pauseSla = $someBoolean } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PauseSlaReply </code> </example> <example> Runs the UpdateGlobal operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: UpdateGlobal $query = New-RscMutationSla -UpdateGlobal # REQUIRED $query.Var.input = @{ # OPTIONAL id = $someString # OPTIONAL name = $someString # OPTIONAL description = $someString # OPTIONAL snapshotSchedule = @{ # OPTIONAL minute = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL hourly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL daily = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL weekly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfWeek = $someDayOfWeek # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfWeek]) for enum values. } # OPTIONAL monthly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfMonth = $someDayOfMonth # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfMonth]) for enum values. } # OPTIONAL quarterly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfQuarter = $someDayOfQuarter # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfQuarter]) for enum values. # OPTIONAL quarterStartMonth = $someMonth # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Month]) for enum values. } # OPTIONAL yearly = @{ # OPTIONAL basicSchedule = @{ # OPTIONAL frequency = $someInt # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL dayOfYear = $someDayOfYear # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfYear]) for enum values. # OPTIONAL yearStartMonth = $someMonth # Call [Enum]::GetValues([RubrikSecurityCloud.Types.Month]) for enum values. } } # OPTIONAL stateVersion = $someInt64 # OPTIONAL replicationSpecInput = @{ # OPTIONAL replicationType = $someReplicationType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ReplicationType]) for enum values. # OPTIONAL specificReplicationSpecInput = @{ # OPTIONAL unidirectionalSpecInput = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL bidirectionalSpecInput = @{ # OPTIONAL replicationSpec1 = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL replicationSpec2 = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL cloudRegionSpecInput = @{ # OPTIONAL replicationTargetRegion = $someString # OPTIONAL cloudProvider = $someCloudProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudProvider]) for enum values. # OPTIONAL retention = $someInt # OPTIONAL retentionUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL cloudLocationSpecInput = @{ # OPTIONAL replicationTargetId = $someString # OPTIONAL cloudProvider = $someCloudProvider # Call [Enum]::GetValues([RubrikSecurityCloud.Types.CloudProvider]) for enum values. # OPTIONAL retentionDuration = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } } # OPTIONAL localRetentionLimit = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL firstFullBackupWindows = @( @{ # OPTIONAL durationInHours = $someInt # OPTIONAL startTimeAttributes = @{ # OPTIONAL dayOfWeek = @{ # OPTIONAL day = $someDayOfWeek # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfWeek]) for enum values. } # OPTIONAL hour = $someInt # OPTIONAL minute = $someInt } } ) # OPTIONAL backupWindows = @( @{ # OPTIONAL durationInHours = $someInt # OPTIONAL startTimeAttributes = @{ # OPTIONAL dayOfWeek = @{ # OPTIONAL day = $someDayOfWeek # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DayOfWeek]) for enum values. } # OPTIONAL hour = $someInt # OPTIONAL minute = $someInt } } ) # OPTIONAL logConfig = @{ # OPTIONAL slaLogFrequencyConfig = @{ # OPTIONAL retention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } # OPTIONAL objectSpecificConfigsInput = @{ # OPTIONAL sapHanaConfigInput = @{ # OPTIONAL incrementalFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL differentialFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL storageSnapshotConfig = @{ # OPTIONAL frequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL retention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } # OPTIONAL awsRdsConfigInput = @{ # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL vmwareVmConfigInput = @{ # OPTIONAL logRetentionSeconds = $someInt64 } # OPTIONAL azureSqlDatabaseDbConfigInput = @{ # OPTIONAL logRetentionInDays = $someInt } # OPTIONAL azureSqlManagedInstanceDbConfigInput = @{ # OPTIONAL logRetentionInDays = $someInt } # OPTIONAL db2ConfigInput = @{ # OPTIONAL incrementalFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL differentialFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logArchivalMethod = $someLogArchivalMethod # Call [Enum]::GetValues([RubrikSecurityCloud.Types.LogArchivalMethod]) for enum values. } # OPTIONAL mssqlConfigInput = @{ # OPTIONAL frequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL oracleConfigInput = @{ # OPTIONAL frequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL hostLogRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL mongoConfigInput = @{ # OPTIONAL logFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL azureBlobConfigInput = @{ # OPTIONAL continuousBackupRetentionInDays = $someInt # OPTIONAL backupLocationId = $someString } # OPTIONAL awsNativeS3SlaConfigInput = @{ # OPTIONAL archivalLocationId = $someString # OPTIONAL continuousBackupRetentionInDays = $someInt } # OPTIONAL managedVolumeSlaConfigInput = @{ # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL postgresDbClusterSlaConfigInput = @{ # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } # OPTIONAL mysqldbConfigInput = @{ # OPTIONAL logFrequency = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL logRetention = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } } } # OPTIONAL shouldApplyToExistingSnapshots = @{ # OPTIONAL value = $someBoolean } # OPTIONAL shouldApplyToNonPolicySnapshots = @{ # OPTIONAL value = $someBoolean } # OPTIONAL userNote = $someString # OPTIONAL archivalSpecs = @( @{ # OPTIONAL archivalGroupId = $someString # OPTIONAL threshold = $someInt # OPTIONAL thresholdUnit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. # OPTIONAL archivalTieringSpecInput = @{ # OPTIONAL isInstantTieringEnabled = $someBoolean # OPTIONAL minAccessibleDurationInSeconds = $someInt64 # OPTIONAL coldStorageClass = $someColdStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ColdStorageClass]) for enum values. # OPTIONAL shouldTierExistingSnapshots = $someBoolean } # OPTIONAL frequencies = @( $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. ) # OPTIONAL archivalLocationToClusterMapping = @( @{ # OPTIONAL clusterUuid = $someString # OPTIONAL locationId = $someString } ) } ) # OPTIONAL replicationSpecsV2 = @( @{ # OPTIONAL clusterUuid = $someString # OPTIONAL storageSettingId = $someString # OPTIONAL retentionDuration = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL awsAccount = $someString # OPTIONAL azureSubscription = $someString # OPTIONAL replicationLocalRetentionDuration = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL cascadingArchivalSpecs = @( @{ # OPTIONAL archivalLocationId = $someString # OPTIONAL archivalThreshold = @{ # OPTIONAL duration = $someInt # OPTIONAL unit = $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. } # OPTIONAL archivalTieringSpecInput = @{ # OPTIONAL isInstantTieringEnabled = $someBoolean # OPTIONAL minAccessibleDurationInSeconds = $someInt64 # OPTIONAL coldStorageClass = $someColdStorageClass # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ColdStorageClass]) for enum values. # OPTIONAL shouldTierExistingSnapshots = $someBoolean } # OPTIONAL frequency = @( $someRetentionUnit # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionUnit]) for enum values. ) # OPTIONAL archivalLocationToClusterMapping = @( @{ # OPTIONAL clusterUuid = $someString # OPTIONAL locationId = $someString } ) } ) # OPTIONAL replicationPairs = @( @{ # REQUIRED sourceClusterUuid = $someString # REQUIRED targetClusterUuid = $someString } ) # OPTIONAL awsRegion = $someAwsNativeRegionForReplication # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegionForReplication]) for enum values. # OPTIONAL azureRegion = $someAzureNativeRegionForReplication # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AzureNativeRegionForReplication]) for enum values. } ) # OPTIONAL objectTypes = @( $someSlaObjectType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SlaObjectType]) for enum values. ) # OPTIONAL isRetentionLockedSla = $someBoolean # OPTIONAL retentionLockMode = $someRetentionLockMode # Call [Enum]::GetValues([RubrikSecurityCloud.Types.RetentionLockMode]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: GlobalSlaReply </code> </example> <example> Runs the Upgrades operation of the 'SLA' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Sla # API Operation: Upgrades $query = New-RscMutationSla -Upgrades # REQUIRED $query.Var.input = @{ # REQUIRED slaIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpgradeSlasReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationSmb"> <summary> Create a new RscQuery object for any of the 4 operations in the 'SMB' API domain: AddAndJoinDomain, DeleteDomain, JoinDomain, or PutConfiguration. </summary> <description> 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. </description> <example> Runs the AddAndJoinDomain operation of the 'SMB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Smb # API Operation: AddAndJoinDomain $query = New-RscMutationSmb -AddAndJoinDomain # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # REQUIRED name = $someString # OPTIONAL smbDomainJoinRequest = @{ # OPTIONAL computerAccountName = $someString # OPTIONAL creationOrganizationUnit = $someString # OPTIONAL domainControllers = @( $someString ) # OPTIONAL isStickySmbService = $someBoolean # OPTIONAL orgNetworkId = $someString # REQUIRED password = $someString # REQUIRED username = $someString } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddAndJoinSmbDomainReply </code> </example> <example> Runs the DeleteDomain operation of the 'SMB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Smb # API Operation: DeleteDomain $query = New-RscMutationSmb -DeleteDomain # REQUIRED $query.Var.input = @{ # REQUIRED domainName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the JoinDomain operation of the 'SMB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Smb # API Operation: JoinDomain $query = New-RscMutationSmb -JoinDomain # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL computerAccountName = $someString # OPTIONAL creationOrganizationUnit = $someString # OPTIONAL domainControllers = @( $someString ) # OPTIONAL isStickySmbService = $someBoolean # OPTIONAL orgNetworkId = $someString # REQUIRED password = $someString # REQUIRED username = $someString } # REQUIRED domainName = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.String </code> </example> <example> Runs the PutConfiguration operation of the 'SMB' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Smb # API Operation: PutConfiguration $query = New-RscMutationSmb -PutConfiguration # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED config = @{ # REQUIRED enforceSmbSecurity = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: PutSmbConfigurationReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationSnapshot"> <summary> 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. </summary> <description> 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. </description> <example> Runs the BatchQuarantine operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: BatchQuarantine $query = New-RscMutationSnapshot -BatchQuarantine # REQUIRED $query.Var.input = @{ # REQUIRED quarantineSpecs = @( @{ # REQUIRED snapshotId = $someString # REQUIRED filesDetails = @( @{ # REQUIRED fileName = $someString } ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchQuarantineSnapshotReply </code> </example> <example> Runs the BatchReleaseFromQuarantine operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: BatchReleaseFromQuarantine $query = New-RscMutationSnapshot -BatchReleaseFromQuarantine # REQUIRED $query.Var.input = @{ # REQUIRED quarantineSpecs = @( @{ # REQUIRED snapshotId = $someString # REQUIRED filesDetails = @( @{ # REQUIRED fileName = $someString } ) } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: BatchReleaseFromQuarantineSnapshotReply </code> </example> <example> Runs the BulkTierExistings operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: BulkTierExistings $query = New-RscMutationSnapshot -BulkTierExistings # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED objectTierInfo = @{ # OPTIONAL locationId = $someString # REQUIRED objectIds = @( $someString ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateDomainController operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: CreateDomainController $query = New-RscMutationSnapshot -CreateDomainController # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateDownloadForVolumeGroup operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: CreateDownloadForVolumeGroup $query = New-RscMutationSnapshot -CreateDownloadForVolumeGroup # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the CreateFileset operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: CreateFileset $query = New-RscMutationSnapshot -CreateFileset # REQUIRED $query.Var.input = @{ # OPTIONAL config = @{ # OPTIONAL slaId = $someString } # REQUIRED id = $someString # OPTIONAL userNote = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the DeleteCloudWorkloadSnapshot operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: DeleteCloudWorkloadSnapshot $query = New-RscMutationSnapshot -DeleteCloudWorkloadSnapshot # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: System.Boolean </code> </example> <example> Runs the DeleteFilesetSnapshots operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: DeleteFilesetSnapshots $query = New-RscMutationSnapshot -DeleteFilesetSnapshots # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: ResponseSuccess </code> </example> <example> Runs the DeleteUnmanageds operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: DeleteUnmanageds $query = New-RscMutationSnapshot -DeleteUnmanageds # REQUIRED $query.Var.input = @{ # REQUIRED snapshotIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the DeletesOfUnmanagedObjects operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: DeletesOfUnmanagedObjects $query = New-RscMutationSnapshot -DeletesOfUnmanagedObjects # REQUIRED $query.Var.input = @{ # REQUIRED objectIds = @( $someString ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RequestSuccess </code> </example> <example> Runs the FilesetDownloadFiles operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: FilesetDownloadFiles $query = New-RscMutationSnapshot -FilesetDownloadFiles # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL nextSnapshotFid = $someString # OPTIONAL userNote = $someString # OPTIONAL zipPassword = $someString # REQUIRED config = @{ # OPTIONAL zipPassword = $someString # OPTIONAL legalHoldDownloadConfig = @{ # REQUIRED isLegalHoldDownload = $someBoolean } # REQUIRED sourceDirs = @( $someString ) } # OPTIONAL deltaTypeFilter = @( $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the FilesetExportFiles operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: FilesetExportFiles $query = New-RscMutationSnapshot -FilesetExportFiles # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL nextSnapshotFid = $someString # OPTIONAL deltaTypeFilter = @( $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values. ) # REQUIRED config = @{ # OPTIONAL hostId = $someString # OPTIONAL ignoreErrors = $someBoolean # OPTIONAL shareId = $someString # OPTIONAL excludePaths = @( $someString ) # OPTIONAL shouldRecreateDirectoryStructure = $someBoolean # REQUIRED exportPathPairs = @( @{ # OPTIONAL exportPathPair = @{ # REQUIRED dstPath = $someString # REQUIRED srcPath = $someString } } ) } # REQUIRED shareType = $someShareTypeEnum # Call [Enum]::GetValues([RubrikSecurityCloud.Types.ShareTypeEnum]) for enum values. # REQUIRED osType = $someGuestOsType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.GuestOsType]) for enum values. } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RestoreDomainController operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: RestoreDomainController $query = New-RscMutationSnapshot -RestoreDomainController # REQUIRED $query.Var.input = @{ # REQUIRED config = @{ # OPTIONAL snapshotForAuthoritativeRestore = $someString # REQUIRED domainControllerRestoreConfigs = @( @{ # OPTIONAL hostId = $someString # REQUIRED snapshotId = $someString } ) # REQUIRED shouldPerformAuthoritativeAdObjectsRestore = $someBoolean # REQUIRED shouldPerformAuthoritativeSysvolRestore = $someBoolean } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the RestoreVolumeGroupFiles operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: RestoreVolumeGroupFiles $query = New-RscMutationSnapshot -RestoreVolumeGroupFiles # REQUIRED $query.Var.input = @{ # REQUIRED id = $someString # OPTIONAL nextSnapshotFid = $someString # REQUIRED config = @{ # OPTIONAL targetHostId = $someString # OPTIONAL shouldIgnoreError = $someBoolean # REQUIRED restoreConfigs = @( @{ # REQUIRED path = $someString # REQUIRED restorePath = $someString } ) } # OPTIONAL deltaTypeFilter = @( $someDeltaType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.DeltaType]) for enum values. ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncRequestStatus </code> </example> <example> Runs the StartEc2InstanceExportJob operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: StartEc2InstanceExportJob $query = New-RscMutationSnapshot -StartEc2InstanceExportJob # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # REQUIRED destinationAwsAccountRubrikId = $someString # REQUIRED instanceType = $someAwsNativeEc2InstanceType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeEc2InstanceType]) for enum values. # REQUIRED instanceName = $someString # REQUIRED securityGroupIds = @( $someString ) # REQUIRED subnetId = $someString # REQUIRED destinationRegionId = $someAwsNativeRegion # Call [Enum]::GetValues([RubrikSecurityCloud.Types.AwsNativeRegion]) for enum values. # REQUIRED shouldCopyTags = $someBoolean # OPTIONAL kmsKeyId = $someString # OPTIONAL sshKeyPairName = $someString # OPTIONAL exportInstanceInPoweredOffState = $someBoolean # OPTIONAL snapshotType = $someSnapshotType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnapshotType]) for enum values. # OPTIONAL amiId = $someString # OPTIONAL iamInstanceProfileArn = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the StartRecoverS3Job operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: StartRecoverS3Job $query = New-RscMutationSnapshot -StartRecoverS3Job # REQUIRED $query.Var.input = @{ # REQUIRED workloadId = $someString # OPTIONAL snapshotId = $someString # OPTIONAL restoreDate = $someDateTime # REQUIRED destinationBucketArn = $someString # REQUIRED shouldRecoverFullBucket = $someBoolean # REQUIRED objectKeys = @( $someString ) # OPTIONAL targetAwsAccountRubrikId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> <example> Runs the TakeOnDemand operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: TakeOnDemand $query = New-RscMutationSnapshot -TakeOnDemand # REQUIRED $query.Var.input = @{ # REQUIRED workloadIds = @( $someString ) # REQUIRED slaId = $someString } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: TakeOnDemandSnapshotReply </code> </example> <example> Runs the UploadDatabaseToBlobstore operation of the 'Snapshot' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snapshot # API Operation: UploadDatabaseToBlobstore $query = New-RscMutationSnapshot -UploadDatabaseToBlobstore # REQUIRED $query.Var.input = @{ # REQUIRED snapshotId = $someString # OPTIONAL targetStorageAccountConfigInput = @{ # REQUIRED subscriptionCloudAccountId = $someString # REQUIRED resourceGroupName = $someString # REQUIRED storageAccountName = $someString # OPTIONAL tags = @{ # REQUIRED tagList = @( @{ # REQUIRED key = $someString # REQUIRED value = $someString } ) } } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AsyncJobStatus </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationSnmp"> <summary> Create a new RscQuery object for any of the 1 operations in the 'SNMP' API domain: ['UpdateConfig']. </summary> <description> 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. </description> <example> Runs the UpdateConfig operation of the 'SNMP' API domain. <code> PS > # Create an RscQuery object for: # API Domain: Snmp # API Operation: UpdateConfig $query = New-RscMutationSnmp -UpdateConfig # REQUIRED $query.Var.input = @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString # OPTIONAL snmpConfigV50 = @{ # OPTIONAL communityString = $someString # OPTIONAL users = @( $someString ) # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) } # OPTIONAL snmpConfigV51 = @{ # OPTIONAL communityString = $someString # OPTIONAL users = @( $someString ) # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) } # OPTIONAL snmpConfigV52 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV53 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV60 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV70 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV80 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV81 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV90 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV91 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV92 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } # OPTIONAL snmpConfigV93 = @{ # OPTIONAL communityString = $someString # REQUIRED isEnabled = $someBoolean # REQUIRED snmpAgentPort = $someInt # OPTIONAL trapReceiverConfigs = @( @{ # OPTIONAL user = $someString # OPTIONAL securityLevel = $someSnmpSecurityLevel # Call [Enum]::GetValues([RubrikSecurityCloud.Types.SnmpSecurityLevel]) for enum values. # REQUIRED address = $someString # REQUIRED port = $someInt } ) # OPTIONAL users = @( @{ # REQUIRED authPassword = $someString # REQUIRED privPassword = $someString # REQUIRED username = $someString } ) } } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: UpdateSnmpConfigReply </code> </example> </member> <member name="T:RubrikSecurityCloud.PowerShell.Cmdlets.New_RscMutationStorageArray"> <summary> Create a new RscQuery object for any of the 4 operations in the 'Storage Arrays' API domain: Add, Delete, Refresh, or Update. </summary> <description> 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. </description> <example> Runs the Add operation of the 'Storage Arrays' API domain. <code> PS > # Create an RscQuery object for: # API Domain: StorageArray # API Operation: Add $query = New-RscMutationStorageArray -Add # REQUIRED $query.Var.input = @{ # REQUIRED configs = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED definition = @{ # OPTIONAL caCerts = $someString # OPTIONAL certificateId = $someString # REQUIRED arrayType = $someStorageArrayType # Call [Enum]::GetValues([RubrikSecurityCloud.Types.StorageArrayType]) for enum values. # REQUIRED hostname = $someString # REQUIRED password = $someString # REQUIRED username = $someString } } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: AddStorageArraysReply </code> </example> <example> Runs the Delete operation of the 'Storage Arrays' API domain. <code> PS > # Create an RscQuery object for: # API Domain: StorageArray # API Operation: Delete $query = New-RscMutationStorageArray -Delete # REQUIRED $query.Var.input = @{ # REQUIRED inputs = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: DeleteStorageArraysReply </code> </example> <example> Runs the Refresh operation of the 'Storage Arrays' API domain. <code> PS > # Create an RscQuery object for: # API Domain: StorageArray # API Operation: Refresh $query = New-RscMutationStorageArray -Refresh # REQUIRED $query.Var.input = @{ # REQUIRED inputs = @( @{ # REQUIRED clusterUuid = $someString # REQUIRED id = $someString } ) } # Execute the query $result = $query | Invoke-Rsc Write-Host $result.GetType().Name # prints: RefreshStorageArraysReply </code> </example> <example> Runs the Update operation of the 'Storage Arrays' API domain. <code> PS > # Create an RscQuery object for: # API Domain: StorageArray # API Operati |