Public/New-Operation.ps1
# Code generated from specification version 1.0.0: DO NOT EDIT Function New-Operation { <# .SYNOPSIS Create a new operation .DESCRIPTION Create a new operation .EXAMPLE PS> New-Operation -Device "{{ randomagent }}" -Description "Restart device" -Data @{ c8y_Restart = @{} } Create operation for a device #> [cmdletbinding(SupportsShouldProcess = $true, PositionalBinding=$true, HelpUri='', ConfirmImpact = 'High')] [Alias()] [OutputType([object])] Param( # Identifies the target device on which this operation should be performed. (required) [Parameter(Mandatory = $true)] [object[]] $Device, # Text description of the operation. [Parameter()] [string] $Description, # Additional properties describing the operation which will be performed on the device. [Parameter()] [object] $Data, # Include raw response including pagination information [Parameter()] [switch] $Raw, # Outputfile [Parameter()] [string] $OutputFile, # NoProxy [Parameter()] [switch] $NoProxy, # Session path [Parameter()] [string] $Session, # Don't prompt for confirmation [Parameter()] [switch] $Force ) Begin { $Parameters = @{} if ($PSBoundParameters.ContainsKey("Device")) { $Parameters["device"] = $Device } if ($PSBoundParameters.ContainsKey("Description")) { $Parameters["description"] = $Description } if ($PSBoundParameters.ContainsKey("Data")) { $Parameters["data"] = ConvertTo-JsonArgument $Data } if ($PSBoundParameters.ContainsKey("OutputFile")) { $Parameters["outputFile"] = $OutputFile } if ($PSBoundParameters.ContainsKey("NoProxy")) { $Parameters["noProxy"] = $NoProxy } if ($PSBoundParameters.ContainsKey("Session")) { $Parameters["session"] = $Session } } Process { foreach ($item in @("")) { if (!$Force -and !$WhatIfPreference -and !$PSCmdlet.ShouldProcess( (PSc8y\Get-C8ySessionProperty -Name "tenant"), (Format-ConfirmationMessage -Name $PSCmdlet.MyInvocation.InvocationName -InputObject $item) )) { continue } Invoke-Command ` -Noun "operations" ` -Verb "create" ` -Parameters $Parameters ` -Type "application/vnd.com.nsn.cumulocity.operation+json" ` -ItemType "" ` -ResultProperty "" ` -Raw:$Raw ` -IncludeAll:$IncludeAll } } End {} } |