AVIREST.psm1
using namespace System.Collections using namespace System.Collections.Generic using namespace System.Management.Automation using namespace System.Management.Automation.Language Class DynamicParameterConfig { [string]$Name [type]$Type [bool]$Mandatory DynamicParameterConfig ($Name, $Type, $Mandatory) { $this.Name = $Name $this.Type = $Type $this.Mandatory = $Mandatory } } # Private Function Invoke-AVIRestParameters { Param( [Parameter(Mandatory = $false)] $ContentType = 'application/json', [Parameter(Mandatory = $false)] $TimeOutSec = 180, [Parameter(Mandatory = $false)] $NoProxy = $true, [Parameter(Mandatory = $false)] $StatusCodeVariable = 'statusCode', [Parameter(Mandatory = $false)] $SkipHttpErrorCheck = $true, [Parameter(Mandatory = $false)] $SkipHeaderValidation = $true, [Parameter(Mandatory = $false)] $SkipCertificateCheck = $true, [Parameter(Mandatory = $false)] $HttpVersion = '2.0' ) @{ ContentType = $ContentType TimeoutSec = $TimeoutSec NoProxy = $NoProxy StatusCodeVariable = $StatusCodeVariable SkipHttpErrorCheck = $SkipHttpErrorCheck SkipHeaderValidation = $SkipHeaderValidation SkipCertificateCheck = $SkipCertificateCheck HttpVersion = $HttpVersion ResponseHeadersVariable = 'responseHeader' } } Function Get-AVIRestToken { [CmdletBinding()] Param ( [Parameter( Mandatory=$true, Position=0)] [ValidateNotNullOrEmpty()] [string]$Server, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [hashtable]$Body, [Parameter(Mandatory=$false)] [string]$APIRev ) Process { $endpoint = '/login' $uriRequest = [System.UriBuilder]::new("https",$Server,443,$endpoint) $loginJSON = $Body | ConvertTo-Json -Compress $loginSplat = @{ Method = 'POST' URI = $uriRequest.URI Body = $loginJSON SessionVariable = 'session' } switch ($AVIStdParams.Keys) { # need for reconnect 'URI' {$AVIStdParams.Remove('URI')} 'Body' {$AVIStdParams.Remove('Body')} } Write-Verbose "$($uriRequest.URI)" $global:AVIReply = $null $global:AVIReply = Invoke-RestMethod @loginSplat @AVIStdParams if ($statusCode -eq 200) { $global:AVIServer = $Server $global:AVIRev = $APIRev $setCookieList = $responseHeader.'Set-Cookie' $cookie = $setCookieList[0] foreach ($cookie in $setCookieList){ $splitCookie = $cookie -split '=|; ',5 $key = ${splitCookie}?[0] switch ($key) { 'csrftoken' { $session.Headers.'X-CSRFToken' = ${splitCookie}?[1] } default { $session.Headers.$key = ${splitCookie}?[1] } } $expkey = '{0}-{1}' -f $key,${splitCookie}?[2] $session.Headers.$expkey = ${splitCookie}?[3] } $session.Headers.'x-avi-version' = $global:AVIReply.version.Version $session.Headers.Referer = 'https://' + $global:AVIServer $AVISessionParam.WebSession = $session } else { Write-Warning "HTTP status [$statuscode]" } Write-Verbose "$AVIServer" $global:AVIReply } } Function Invoke-AVIRest { [CmdletBinding()] Param ( [Parameter(Mandatory=$true)] [ValidateSet('GET','PUT','PATCH','POST','DELETE')] $Method, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$EndPoint, [Parameter(Mandatory=$false)] [ValidateNotNullOrEmpty()] [ValidateScript({Test-JSON $_})] [string]$Body, [Parameter(Mandatory=$false)] [ValidateNotNullOrEmpty()] [hashtable]$Query, [Parameter(Mandatory=$false)] [ValidateNotNullOrEmpty()] [string]$APIRev, [Parameter(Mandatory=$false)] [ValidateNotNullOrEmpty()] [string]$OutputType ) $ErrorActionPreference = 'Stop' Try { # Check connection if ($null -eq $AVISessionParam.WebSession -or $null -eq $AVIServer) { Return 'Not connected to AVI API' } $global:AVIStdParams = Invoke-AVIRestParameters # Check expiration if ((Get-Date).AddMinutes(+5) -ge [datetime]$AVISessionParam.WebSession.Headers.'sessionid-expires') { $AVISessionParam.WebSession = Update-AVIRestToken } $allResults = [List[PSObject]]::New() if ($Method -eq 'GET') { $queryParam = $query ? $query.clone() : @{} if ($null -ne $query.page_size -and $query.page_size -le 200) { $queryParam.page_size = $query.page_size} else { $queryParam.page_size = 200 $queryParam.page = 1 $useTotal = $true } } :pagination do { $uriRequest = [System.UriBuilder]::new("https",$AVIServer,443,$endpoint) if ($Method -eq 'GET' -and $null -eq $global:AVIReply.next) { $queryString = [System.Web.HttpUtility]::ParseQueryString([String]::Empty) foreach ($key in $queryParam.Keys) {$queryString.Add($key, $queryParam.$key)} $uriRequest.Query = $queryString.ToString() } $AVIStdParams.URI = if ($null -ne $global:AVIReply.next) {$global:AVIReply.next} else {$uriRequest.Uri} Write-Verbose "Calling [$method] on URI: $($AVIStdParams.URI.OriginalString)" If ($null -ne $body) {$AVIStdParams.Body = $body} else { if ($AVIStdParams.ContainsKey('Body')) {$AVIStdParams.Remove('Body')} } $global:AVIReply,$statusCode = $null $global:AVIReply = Invoke-RestMethod -Method $Method @AVIStdParams @AVISessionParam $global:AVIResponseHeader = $responseHeader switch -Regex ($statusCode) { '20[0-2]' { if ($global:AVIReply.GetType().Name -eq 'String' -and [string]::IsNullOrEmpty($global:AVIReply)) { break pagination } if ($null -ne $global:AVIReply.results) { $global:AVIReply.results | Foreach {$allResults.Add($_)} } else { $global:AVIReply | Foreach {$allResults.Add($_)} } if ($null -eq $global:AVIReply.next -or $global:AVIReply.count -eq 0) {break pagination} # some don't have any # Pagination # $queryParam.skip = $queryParam.skip + $queryParam.limit $paginationComplete = $useTotal ? $global:AVIReply.count : $allResults.count # continue pagination } 204 { $global:AVIReply break pagination } Default { [PSCustomObject]@{ HTTP_Response = [System.Net.HttpStatusCode]$statusCode API_ErrorMesg = $global:AVIReply HTTP_StatusCode = $statusCode } break pagination } } } until ($allResults.count -eq $paginationComplete) if ($null -ne $PSBoundParameters.OutputType) { $allResults | Foreach {$_.PSObject.TypeNames.Insert(0,$PSBoundParameters.OutputType)} } $allResults | Foreach {$_} } Catch { $PSCmdlet.ThrowTerminatingError($PSItem) } } Function Add-AVIRestParams ($splat, $Parameters, $ParameterSetName) { switch -Wildcard ($ParameterSetName) { # RESERVERED Parameterset Names - Should be filter by default to support paging (if needed) 'Body' { $splat.Body = @{} switch -Regex ($Parameters.Keys) { 'Ids' {$splat.Body.Add('ids',@($Parameters.Ids))} 'Name' {$splat.Body.Add('names',@($Parameters.Name))} 'Type' {$splat.Body.Add('types',@($Parameters.Type))} } $splat.Body = $splat.Body | ConvertTo-JSON -Compress -Depth 3 Return } 'Uuid' { $queryParams = 'JoinResource|Fields|First|Skip|Created' if ($Parameters.Keys -match $queryParams) { $splat.Query = @{} switch -Regex ($Parameters.Keys) { 'JoinResource' {$splat.Query.Add('join_subresources',$Parameters.JoinResource)} 'Fields' {$splat.Query.Add('fields',$Parameters.Fields)} 'First' { $splat.Query.Add('page',1) $splat.Query.Add('page_size',$Parameters.First) } 'Skip' {$splat.Query.Add('skip',$Parameters.Skip)} } } break } 'Query' { $splat.Query = $Parameters.Query break } 'Filter*' { $queryParams = 'Uuid|Name|Fields|First|Skip|Created' if ($Parameters.Keys -match $queryParams) { $splat.Query = @{} switch -Regex ($Parameters.Keys) { # 'Uuid' {$splat.Query.Add('idFilter',$Parameters.Id)} 'Name' {$splat.Query.Add('name',$Parameters.Name)} 'Fields' {$splat.Query.Add('fields',$Parameters.Type)} 'First' { $splat.Query.Add('page',1) $splat.Query.Add('page_size',$Parameters.First) } 'Skip' {$splat.Query.Add('skip',$Parameters.Skip)} # 'CreatedAfter' {$splat.Query.Add('createdAfterFilter',$Parameters.CreatedAfter.ToString('r'))} # http datetime format # 'CreatedBefore' {$splat.Query.Add('createdBeforeFilter',$Parameters.CreatedBefore.ToString('r'))} # http datetime format } } break } } } Function New-RuntimeDefinedParameter { Param ( [Parameter(Mandatory=$true)] [string[]]$ParameterSetName, [Parameter(Mandatory=$true, HelpMessage = 'Provide a hashtable where key is the dynamic parameter and value is the type')] [DynamicParameterConfig]$DynamicParameterConfig, [ValidateNotNullorEmpty()] [Parameter(Mandatory=$false)] [pscustomobject]$StringArgumentCompleter ) $attributeCollectionMandatory = [ObjectModel.Collection[System.Attribute]]::new() Foreach ($paramset in $ParameterSetName) { $attributeCollectionMandatory.Add( [ParameterAttribute]@{ ParameterSetName = $paramset Mandatory = $ParamConfig.Mandatory } ) Switch ($PSBoundParameters.Keys) { StringArgumentCompleter { $attributeCollectionMandatory.Add([ArgumentCompletionsAttribute]::new($StringArgumentCompleter)) } } } [RuntimeDefinedParameter]::new( $ParamConfig.Name, $ParamConfig.Type, $attributeCollectionMandatory ) } Function Out-RuntimeDefinedParameterDict { Param ( [Parameter(Mandatory=$true,ValueFromPipeline = $true)] [RuntimeDefinedParameter[]]$RuntimeDef ) Begin { $paramDictionary = [RuntimeDefinedParameterDictionary]::new() } Process { $RuntimeDef | Foreach {$paramDictionary.Add($_.Name, $_)} } End { return $paramDictionary } } Function Get-AVIFunctionTemplate ($method,$template,$jsonData) { $title = $jsonData.info.title $apiName = Get-ApiPathName $method.ApiPath $apiPath = $method.ApiPath -replace '{uuid}','${uuid}' $template -replace '\{0\}',$apiName -replace '\{1\}',$apiPath -replace '\{3\}',$apiVersion -replace '\{4\}',$title } Function Get-ApiPathName ($ApiPath) { $pathSegments = $apiPath -split '^/|/|{uuid}|-|/$' | Where {-not [string]::IsNullOrEmpty($_)} $segmentList = foreach ($segment in $pathSegments) { $segment.Substring(0,1).ToUpper() + $segment.Substring(1) } $segmentList -join '' } Function New-AVISwaggerJsonObj { Param( [switch]$MinRequired, [hashtable]$Definitions, [string]$Path, [switch]$Nested ) $PropertyDef = $Definitions.$Path.properties $RequiredPropertyDef = $Definitions.$Path.required $propertyList = [ordered]@{} if ($PSBoundParameters.minRequired.isPresent -and -not $PSBoundParameters.Nested.isPresent) { foreach ($key in $PropertyDef.Keys) { if ($RequiredPropertyDef -contains $key) { $propertyList.Add($key,$PropertyDef.$key) } } } else {$propertyList = $PropertyDef} $obj = [ordered]@{} foreach ($key in $propertyList.Keys | Sort) { $value = $propertyList.$key if ($value.readOnly -eq $true) {continue} if ($null -ne $value.type) { switch ($value.type) { string { [string]$obj.$key = $value.default ? $value.default : '' } boolean { [bool]$obj.$key = $value.default ? $value.default : $null } integer { [int]$obj.$key = $value.default ? $value.default : $null } array { $obj.$key = [List[object]]::New() if ($null -ne $value.items) { $ref,$nestedObj = $null $ref = $value.items.'$ref' -replace [regex]::Escape('#/definitions/') $nestedObj = New-AVISwaggerJsonObj -Definitions $Definitions -Path $ref -Nested $obj.$key.Add($nestedObj) } } default { } } } else { $obj.$key = @{} $ref,$nestedObj = $null $ref = $value.'$ref' -replace [regex]::Escape('#/definitions/') # $refPropertyDef = $Definitions.$ref.properties # if ($PSBoundParameters.minRequired.isPresent) { # $nestedObj = New-AVISwaggerJsonObj -Definitions $Definitions -Path $ref -MinRequired -Nested # } # else { # $nestedObj = New-AVISwaggerJsonObj -Definitions $Definitions -Path $ref -Nested # } $nestedObj = New-AVISwaggerJsonObj -Definitions $Definitions -Path $ref -Nested $obj.$key = $nestedObj } } if ($PSBoundParameters.Nested.isPresent) { [pscustomobject]$obj } else { [pscustomobject]$obj | ConvertTo-JSON -Depth 100 } } Function New-AviRestFunctionExport ($method,$methodList,$templateFunction,$jsonData,$ExportList) { # $method = $methodList[-1] foreach ($methodObj in $methodList) { # New $resetFunctionTemplate = $templateFunction.psobject.Copy() $functionTemplate = Get-AVIFunctionTemplate $methodObj $resetFunctionTemplate $jsonData $functionTemplate $apiName = Get-ApiPathName $method.ApiPath $exportName = "$method-AVIRest$apiName" $ExportList.Add($exportName) } } Function New-AviRestFunctionParamExport ($methodList,$templateFunction,$jsonData,$ExportList) { # $method = $methodList[-1] foreach ($method in $methodList) { # New Object $apiName = Get-ApiPathName $method.ApiPath $endpoint = $method.ApiPath -split '/',-2 | Select -Last 1 $endpoint = $endpoint -replace '-' $definitionList = $jsonData.definitions $endpointKey = $null $endpointKey = Switch ($definitionList.keys) { {$_ -match $endpoint} {$_} } if ($null -ne $endpointKey) { $fullObj = New-AVISwaggerJsonObj -Definitions $definitionList -Path $endpointKey $minObj = New-AVISwaggerJsonObj -Definitions $definitionList -Path $endpointKey -MinRequired $resetTemplateFunction = $templateFunction.psobject.Copy() $objectFunction = $resetTemplateFunction -replace '\{0\}',$apiName -replace '\{1\}',$minObj -replace '\{2\}',$fullObj -replace '\{3\}',$apiVersion -replace '\{4\}',$title $exportName = "New-AVIRest{0}Object" -f $apiName $ExportList.Add($exportName) $objectFunction } } } # Public Function Connect-AVIRest { [CmdletBinding(DefaultParameterSetName = 'Username')] Param ( [Parameter( Mandatory=$true, Position=0)] [Parameter(ParameterSetName = 'Username')] [Parameter(ParameterSetName = 'Credential')] [ValidateNotNullOrEmpty()] [string]$Server, [Parameter( Mandatory=$true, ParameterSetName = 'Username')] [ValidateNotNullOrEmpty()] [string]$Username, [Parameter( Mandatory=$true, ParameterSetName = 'Username')] [ValidateNotNullOrEmpty()] [Securestring]$Password, [Parameter( Mandatory=$true, Position=1, ParameterSetName = 'Credential')] [ValidateNotNullOrEmpty()] [PSCredential]$Credential ) # DynamicParam { # $RuntimeDefList = [List[RuntimeDefinedParameter]]::New() # $paramConfig = [DynamicParameterConfig]::New('APIRev', [string[]], $true) # $runtimeParamConfig = @{ # ParameterSetName = 'Username','Credential' # DynamicParameterConfig = $paramConfig # StringArgumentCompleter = $global:AVIapiRevsionList # } # $RuntimeDefList.Add((New-RuntimeDefinedParameter @runtimeParamConfig)) # $RuntimeDefList | Out-RuntimeDefinedParameterDict # } Process { $global:AVIStdParams = Invoke-AVIRestParameters $global:AVISessionParam = [hashtable]::Synchronized(@{ WebSession = $null }) Switch ($PSCmdlet.ParameterSetName) { 'Credential' { $Username = $Credential.UserName [string]$pswd = $Credential.GetNetworkCredential().Password } 'Username' { [string]$pswd = $Password | ConvertFrom-SecureString $Password -AsPlainText } } $Body = @{ 'username' = $Username # case sensitive property !!!!!!!!! 'password' = $pswd # case sensitive property !!!!!!!!!!!! } $global:AVILbServerInfo = Get-AVIRestToken -Server $Server -Body $Body -APIRev $APIRev $global:AVILbServerInfo } } Function Disconnect-AVIRest { $endpoint = "/logout" $method = 'POST' Invoke-AVIRest -Method $method -Endpoint $endpoint -EA SilentlyContinue $global:AVISessionParam.WebSession = $null $global:AVIServer = $null } Function Get-AVIRestRef { [CmdletBinding( DefaultParameterSetName = 'Ref', SupportsPaging=$true)] Param ( [Parameter( Position=0, Mandatory=$true, ParameterSetName = 'Ref', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [pscustomobject]$AviLbObject, [Switch]$RefOnly ) $refList = $AviLbObject | Get-Member -MemberType NoteProperty | Where Name -match '_ref(s)*$' | Select -ExpandProperty Name If ($null -eq $refList) {return $Object} # $refProperty = $refList[0] $propertyList = [List[string]]::New($refList.count) :refList foreach ($refProperty in $refList) { $refUrl = $AviLbObject.$refProperty $splat = @{ Method = 'GET' Endpoint = ($refUrl -split '(/api)' | Select -Skip 1) -join '' } $refReply = $null $refReply = Invoke-AVIRest @splat if ($null -eq $refReply -or $null -ne $refReply.API_ErrorMesg) { continue refList } $propertyName = $null $propertyName = $refProperty -replace '_ref' $propertyList.Add($propertyName) $AviLbObject | Add-Member -MemberType NoteProperty -Name $propertyName -Value $refReply -Force } if ($PSBoundParameters.RefOnly.isPresent) { # $joinProperty = $propertyList -join ',' $AviLbObject | Select $propertyList | Foreach {$_.PSObject.TypeNames.Insert(0,'AVIRestRef')} } else { $AviLbObject | Foreach {$_.PSObject.TypeNames.Insert(0,'AVIRestRef')} } } Function Get-AVIRestRefObject { [CmdletBinding( DefaultParameterSetName = 'Ref', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$true, Position=0, ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestRef')]$Ref, [Switch]$RefOnly ) $refList = $AviLbObject | Get-Member -MemberType NoteProperty | Where Name -match '_ref(s)*$' | Select -ExpandProperty Name If ($null -eq $refList) {return $Object} # $refProperty = $refList[0] $propertyList = [List[string]]::New($refList.count) :refList foreach ($refProperty in $refList) { $refUrl = $AviLbObject.$refProperty $splat = @{ Method = 'GET' Endpoint = ($refUrl -split '(/api)' | Select -Skip 1) -join '' } $refReply = $null $refReply = Invoke-AVIRest @splat if ($null -eq $refReply -or $null -ne $refReply.API_ErrorMesg) { continue refList } $propertyName = $null $propertyName = $refProperty -replace '_ref' $propertyList.Add($propertyName) $AviLbObject | Add-Member -MemberType NoteProperty -Name $propertyName -Value $refReply -Force } if ($PSBoundParameters.RefOnly.isPresent) { # $joinProperty = $propertyList -join ',' $AviLbObject | Select $propertyList } else { $AviLbObject } } Function Copy-AVIRestObject { [CmdletBinding(DefaultParameterSetName = 'Default')] Param( [Parameter( Position = 0, Mandatory=$true, ValueFromPipeline=$false, ParameterSetName = 'Default')] [ValidateNotNullOrEmpty()] $InputObject ) DynamicParam { $RuntimeDefList = [List[RuntimeDefinedParameter]]::New() $paramConfig = [DynamicParameterConfig]::New('Excludes', [string[]], $false) [string[]]$completionList = $InputObject | Get-Member -MemberType NoteProperty | Select-Object -ExpandProperty Name -EA SilentlyContinue $runtimeParamConfig = @{ ParameterSetName = 'Default' DynamicParameterConfig = $paramConfig StringArgumentCompleter = $completionList ? $completionList : '' } $RuntimeDefList.Add((New-RuntimeDefinedParameter @runtimeParamConfig)) $RuntimeDefList | Out-RuntimeDefinedParameterDict } Begin { } Process { $defaultExcludes = 'uuid','url','_last_modified' [string[]]$excludeProperty = $defaultExcludes + $Excludes $psTypeName = $InputObject.{pstypenames}?[0] $result = $InputObject | Select-Object * -ExcludeProperty $excludeProperty -EA SilentlyContinue If ($null -ne $InputObject.Name) { $result.name = $InputObject.Name + '-Cloned' } If ($null -ne $psTypeName) { $result.PSObject.TypeNames.Insert(0,$psTypeName) } $result } } Function Get-AVIRestActiongroupconfig { <# .SYNOPSIS Configure Avi ActionGroupConfig Object API .EXAMPLE Get-AviRestActiongroupconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/actiongroupconfig$Uuid" : '/api/actiongroupconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestActiongroupconfig } } Function Set-AVIRestActiongroupconfig { <# .SYNOPSIS Configure Avi ActionGroupConfig Object API .EXAMPLE $object = Get-AviRestActiongroupconfig $object.name = 'New name' Set-AviRestActiongroupconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestActiongroupconfig')]$Actiongroupconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Actiongroupconfig.uuid $global:body = ConvertTo-JSON $Actiongroupconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/actiongroupconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Actiongroupconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestActiongroupconfig } } } Function New-AVIRestActiongroupconfig { <# .SYNOPSIS Configure Avi ActionGroupConfig Object API .EXAMPLE New-AviRestActiongroupconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestActiongroupconfig')]$Actiongroupconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/actiongroupconfig" Body = ConvertTo-JSON $Actiongroupconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Actiongroupconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestActiongroupconfig } } } Function New-AVIRestActiongroupconfigObject { <# .SYNOPSIS Configure Avi ActionGroupConfig Object API .EXAMPLE New-AviRestActiongroupconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestActiongroupconfig') $result } } Function Remove-AVIRestActiongroupconfig { <# .SYNOPSIS Configure Avi ActionGroupConfig Object API .EXAMPLE Get-AviRestActiongroupconfig | Remove-AviRestActiongroupconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Actiongroupconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Actiongroupconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestActiongroupconfig')]$Actiongroupconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Actiongroupconfig') { $uuid = $Actiongroupconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/actiongroupconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Actiongroupconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlbservicesconfig { <# .SYNOPSIS Configure Avi ALBServicesConfig Object API .EXAMPLE Get-AviRestAlbservicesconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/albservicesconfig$Uuid" : '/api/albservicesconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlbservicesconfig } } Function Set-AVIRestAlbservicesconfig { <# .SYNOPSIS Configure Avi ALBServicesConfig Object API .EXAMPLE $object = Get-AviRestAlbservicesconfig $object.name = 'New name' Set-AviRestAlbservicesconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesconfig')]$Albservicesconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Albservicesconfig.uuid $global:body = ConvertTo-JSON $Albservicesconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/albservicesconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Albservicesconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesconfig } } } Function New-AVIRestAlbservicesconfig { <# .SYNOPSIS Configure Avi ALBServicesConfig Object API .EXAMPLE New-AviRestAlbservicesconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesconfig')]$Albservicesconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/albservicesconfig" Body = ConvertTo-JSON $Albservicesconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Albservicesconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesconfig } } } Function New-AVIRestAlbservicesconfigObject { <# .SYNOPSIS Configure Avi ALBServicesConfig Object API .EXAMPLE New-AviRestAlbservicesconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlbservicesconfig') $result } } Function Remove-AVIRestAlbservicesconfig { <# .SYNOPSIS Configure Avi ALBServicesConfig Object API .EXAMPLE Get-AviRestAlbservicesconfig | Remove-AviRestAlbservicesconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Albservicesconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Albservicesconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesconfig')]$Albservicesconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Albservicesconfig') { $uuid = $Albservicesconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/albservicesconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Albservicesconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi ALBServicesFileUpload Object API .EXAMPLE Get-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/albservicesfileupload$Uuid" : '/api/albservicesfileupload' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlbservicesfileupload } } Function Set-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi ALBServicesFileUpload Object API .EXAMPLE $object = Get-AviRestAlbservicesfileupload $object.name = 'New name' Set-AviRestAlbservicesfileupload $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Albservicesfileupload.uuid $global:body = ConvertTo-JSON $Albservicesfileupload -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/albservicesfileupload/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesfileupload } } } Function New-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi ALBServicesFileUpload Object API .EXAMPLE New-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/albservicesfileupload" Body = ConvertTo-JSON $Albservicesfileupload -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesfileupload } } } Function New-AVIRestAlbservicesfileuploadObject { <# .SYNOPSIS Configure Avi ALBServicesFileUpload Object API .EXAMPLE New-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlbservicesfileupload') $result } } Function Remove-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi ALBServicesFileUpload Object API .EXAMPLE Get-AviRestAlbservicesfileupload | Remove-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Albservicesfileupload')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Albservicesfileupload', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Albservicesfileupload') { $uuid = $Albservicesfileupload.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/albservicesfileupload/${uuid}" } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlbservicesjob { <# .SYNOPSIS Configure Avi ALBServicesJob Object API .EXAMPLE Get-AviRestAlbservicesjob .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/albservicesjob$Uuid" : '/api/albservicesjob' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlbservicesjob } } Function Set-AVIRestAlbservicesjob { <# .SYNOPSIS Configure Avi ALBServicesJob Object API .EXAMPLE $object = Get-AviRestAlbservicesjob $object.name = 'New name' Set-AviRestAlbservicesjob $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesjob')]$Albservicesjob ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Albservicesjob.uuid $global:body = ConvertTo-JSON $Albservicesjob -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/albservicesjob/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Albservicesjob.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesjob } } } Function New-AVIRestAlbservicesjob { <# .SYNOPSIS Configure Avi ALBServicesJob Object API .EXAMPLE New-AviRestAlbservicesjob .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesjob')]$Albservicesjob ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/albservicesjob" Body = ConvertTo-JSON $Albservicesjob -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Albservicesjob.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesjob } } } Function New-AVIRestAlbservicesjobObject { <# .SYNOPSIS Configure Avi ALBServicesJob Object API .EXAMPLE New-AviRestAlbservicesjob .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlbservicesjob') $result } } Function Remove-AVIRestAlbservicesjob { <# .SYNOPSIS Configure Avi ALBServicesJob Object API .EXAMPLE Get-AviRestAlbservicesjob | Remove-AviRestAlbservicesjob .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Albservicesjob')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Albservicesjob', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesjob')]$Albservicesjob, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Albservicesjob') { $uuid = $Albservicesjob.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/albservicesjob/${uuid}" } if ($pscmdlet.ShouldProcess("$($Albservicesjob.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlert { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE Get-AviRestAlert .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/debugvirtualservice/{uuid},/upgradestatusinfo/{uuid},/virtualservice/{uuid},/albservicesfileupload/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/alert$Uuid" : '/api/alert' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlert } } Function Set-AVIRestAlert { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE $object = Get-AviRestAlert $object.name = 'New name' Set-AviRestAlert $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlert')]$Alert ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alert.uuid $global:body = ConvertTo-JSON $Alert -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alert/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alert.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlert } } } Function Set-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE $object = Get-AviRestDebugvirtualservice $object.name = 'New name' Set-AviRestDebugvirtualservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Debugvirtualservice.uuid $global:body = ConvertTo-JSON $Debugvirtualservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/debugvirtualservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDebugvirtualservice } } } Function Set-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE $object = Get-AviRestUpgradestatusinfo $object.name = 'New name' Set-AviRestUpgradestatusinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Upgradestatusinfo.uuid $global:body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/upgradestatusinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function Set-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE $object = Get-AviRestVirtualservice $object.name = 'New name' Set-AviRestVirtualservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Virtualservice.uuid $global:body = ConvertTo-JSON $Virtualservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/virtualservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualservice } } } Function Set-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE $object = Get-AviRestAlbservicesfileupload $object.name = 'New name' Set-AviRestAlbservicesfileupload $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Albservicesfileupload.uuid $global:body = ConvertTo-JSON $Albservicesfileupload -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/albservicesfileupload/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesfileupload } } } Function New-AVIRestAlert { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestAlert .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlert')]$Alert ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alert" Body = ConvertTo-JSON $Alert -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alert.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlert } } } Function New-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/debugvirtualservice" Body = ConvertTo-JSON $Debugvirtualservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDebugvirtualservice } } } Function New-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/upgradestatusinfo" Body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function New-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice" Body = ConvertTo-JSON $Virtualservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualservice } } } Function New-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/albservicesfileupload" Body = ConvertTo-JSON $Albservicesfileupload -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesfileupload } } } Function New-AVIRestAlertObject { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestAlert .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlert') $result } } Function New-AVIRestDebugvirtualserviceObject { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDebugvirtualservice') $result } } Function New-AVIRestUpgradestatusinfoObject { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUpgradestatusinfo') $result } } Function New-AVIRestVirtualserviceObject { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualservice') $result } } Function New-AVIRestAlbservicesfileuploadObject { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE New-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlbservicesfileupload') $result } } Function Remove-AVIRestAlert { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE Get-AviRestAlert | Remove-AviRestAlert .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alert')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alert', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlert')]$Alert, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alert') { $uuid = $Alert.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alert/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alert.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE Get-AviRestDebugvirtualservice | Remove-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Debugvirtualservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Debugvirtualservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Debugvirtualservice') { $uuid = $Debugvirtualservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/debugvirtualservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE Get-AviRestUpgradestatusinfo | Remove-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Upgradestatusinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Upgradestatusinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Upgradestatusinfo') { $uuid = $Upgradestatusinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/upgradestatusinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE Get-AviRestVirtualservice | Remove-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Virtualservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Virtualservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Virtualservice') { $uuid = $Virtualservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/virtualservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi Alert Object API .EXAMPLE Get-AviRestAlbservicesfileupload | Remove-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Albservicesfileupload')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Albservicesfileupload', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Albservicesfileupload') { $uuid = $Albservicesfileupload.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/albservicesfileupload/${uuid}" } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlertconfig { <# .SYNOPSIS Configure Avi AlertConfig Object API .EXAMPLE Get-AviRestAlertconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/alertconfig$Uuid" : '/api/alertconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlertconfig } } Function Set-AVIRestAlertconfig { <# .SYNOPSIS Configure Avi AlertConfig Object API .EXAMPLE $object = Get-AviRestAlertconfig $object.name = 'New name' Set-AviRestAlertconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertconfig')]$Alertconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertconfig.uuid $global:body = ConvertTo-JSON $Alertconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertconfig } } } Function New-AVIRestAlertconfig { <# .SYNOPSIS Configure Avi AlertConfig Object API .EXAMPLE New-AviRestAlertconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertconfig')]$Alertconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertconfig" Body = ConvertTo-JSON $Alertconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertconfig } } } Function New-AVIRestAlertconfigObject { <# .SYNOPSIS Configure Avi AlertConfig Object API .EXAMPLE New-AviRestAlertconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertconfig') $result } } Function Remove-AVIRestAlertconfig { <# .SYNOPSIS Configure Avi AlertConfig Object API .EXAMPLE Get-AviRestAlertconfig | Remove-AviRestAlertconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertconfig')]$Alertconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertconfig') { $uuid = $Alertconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlertemailconfig { <# .SYNOPSIS Configure Avi AlertEmailConfig Object API .EXAMPLE Get-AviRestAlertemailconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/alertemailconfig$Uuid" : '/api/alertemailconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlertemailconfig } } Function Set-AVIRestAlertemailconfig { <# .SYNOPSIS Configure Avi AlertEmailConfig Object API .EXAMPLE $object = Get-AviRestAlertemailconfig $object.name = 'New name' Set-AviRestAlertemailconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfig')]$Alertemailconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertemailconfig.uuid $global:body = ConvertTo-JSON $Alertemailconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertemailconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertemailconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertemailconfig } } } Function New-AVIRestAlertemailconfig { <# .SYNOPSIS Configure Avi AlertEmailConfig Object API .EXAMPLE New-AviRestAlertemailconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfig')]$Alertemailconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertemailconfig" Body = ConvertTo-JSON $Alertemailconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertemailconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertemailconfig } } } Function New-AVIRestAlertemailconfigObject { <# .SYNOPSIS Configure Avi AlertEmailConfig Object API .EXAMPLE New-AviRestAlertemailconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertemailconfig') $result } } Function Invoke-AVIRestAlertemailconfigTestemail { <# .SYNOPSIS Configure Avi AlertEmailConfig Object API .EXAMPLE Invoke-AviRestAlertemailconfigTestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfigTestemail')]$AlertemailconfigTestemail ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $AlertemailconfigTestemail.uuid $splat = @{ Method = 'POST' Endpoint = "/api/alertemailconfig/${uuid}/testemail" Body = ConvertTo-JSON $AlertemailconfigTestemail -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($AlertemailconfigTestemail.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertemailconfigTestemail } } } Function New-AVIRestAlertemailconfigTestemailObject { <# .SYNOPSIS Configure Avi AlertEmailConfig Object API .EXAMPLE New-AviRestAlertemailconfigTestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "subject": "", "text": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "subject": "", "text": "", "uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertemailconfigTestemail') $result } } Function Remove-AVIRestAlertemailconfig { <# .SYNOPSIS Configure Avi AlertEmailConfig Object API .EXAMPLE Get-AviRestAlertemailconfig | Remove-AviRestAlertemailconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertemailconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertemailconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfig')]$Alertemailconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertemailconfig') { $uuid = $Alertemailconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertemailconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertemailconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlertobjectlist { <# .SYNOPSIS Configure Avi AlertObjectList Object API .EXAMPLE Get-AviRestAlertobjectlist .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/alertobjectlist$Uuid" : '/api/alertobjectlist' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlertobjectlist } } Function Set-AVIRestAlertobjectlist { <# .SYNOPSIS Configure Avi AlertObjectList Object API .EXAMPLE $object = Get-AviRestAlertobjectlist $object.name = 'New name' Set-AviRestAlertobjectlist $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertobjectlist')]$Alertobjectlist ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertobjectlist.uuid $global:body = ConvertTo-JSON $Alertobjectlist -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertobjectlist/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertobjectlist.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertobjectlist } } } Function New-AVIRestAlertobjectlist { <# .SYNOPSIS Configure Avi AlertObjectList Object API .EXAMPLE New-AviRestAlertobjectlist .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertobjectlist')]$Alertobjectlist ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertobjectlist" Body = ConvertTo-JSON $Alertobjectlist -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertobjectlist.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertobjectlist } } } Function New-AVIRestAlertobjectlistObject { <# .SYNOPSIS Configure Avi AlertObjectList Object API .EXAMPLE New-AviRestAlertobjectlist .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertobjectlist') $result } } Function Remove-AVIRestAlertobjectlist { <# .SYNOPSIS Configure Avi AlertObjectList Object API .EXAMPLE Get-AviRestAlertobjectlist | Remove-AviRestAlertobjectlist .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertobjectlist')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertobjectlist', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertobjectlist')]$Alertobjectlist, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertobjectlist') { $uuid = $Alertobjectlist.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertobjectlist/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertobjectlist.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlertscriptconfig { <# .SYNOPSIS Configure Avi AlertScriptConfig Object API .EXAMPLE Get-AviRestAlertscriptconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/alertscriptconfig$Uuid" : '/api/alertscriptconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlertscriptconfig } } Function Set-AVIRestAlertscriptconfig { <# .SYNOPSIS Configure Avi AlertScriptConfig Object API .EXAMPLE $object = Get-AviRestAlertscriptconfig $object.name = 'New name' Set-AviRestAlertscriptconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertscriptconfig')]$Alertscriptconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertscriptconfig.uuid $global:body = ConvertTo-JSON $Alertscriptconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertscriptconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertscriptconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertscriptconfig } } } Function New-AVIRestAlertscriptconfig { <# .SYNOPSIS Configure Avi AlertScriptConfig Object API .EXAMPLE New-AviRestAlertscriptconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertscriptconfig')]$Alertscriptconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertscriptconfig" Body = ConvertTo-JSON $Alertscriptconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertscriptconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertscriptconfig } } } Function New-AVIRestAlertscriptconfigObject { <# .SYNOPSIS Configure Avi AlertScriptConfig Object API .EXAMPLE New-AviRestAlertscriptconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertscriptconfig') $result } } Function Remove-AVIRestAlertscriptconfig { <# .SYNOPSIS Configure Avi AlertScriptConfig Object API .EXAMPLE Get-AviRestAlertscriptconfig | Remove-AviRestAlertscriptconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertscriptconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertscriptconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertscriptconfig')]$Alertscriptconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertscriptconfig') { $uuid = $Alertscriptconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertscriptconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertscriptconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAlertsyslogconfig { <# .SYNOPSIS Configure Avi AlertSyslogConfig Object API .EXAMPLE Get-AviRestAlertsyslogconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/alertsyslogconfig$Uuid" : '/api/alertsyslogconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAlertsyslogconfig } } Function Set-AVIRestAlertsyslogconfig { <# .SYNOPSIS Configure Avi AlertSyslogConfig Object API .EXAMPLE $object = Get-AviRestAlertsyslogconfig $object.name = 'New name' Set-AviRestAlertsyslogconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfig')]$Alertsyslogconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertsyslogconfig.uuid $global:body = ConvertTo-JSON $Alertsyslogconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertsyslogconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertsyslogconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertsyslogconfig } } } Function New-AVIRestAlertsyslogconfig { <# .SYNOPSIS Configure Avi AlertSyslogConfig Object API .EXAMPLE New-AviRestAlertsyslogconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfig')]$Alertsyslogconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertsyslogconfig" Body = ConvertTo-JSON $Alertsyslogconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertsyslogconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertsyslogconfig } } } Function New-AVIRestAlertsyslogconfigObject { <# .SYNOPSIS Configure Avi AlertSyslogConfig Object API .EXAMPLE New-AviRestAlertsyslogconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertsyslogconfig') $result } } Function Invoke-AVIRestAlertsyslogconfigTestsyslog { <# .SYNOPSIS Configure Avi AlertSyslogConfig Object API .EXAMPLE Invoke-AviRestAlertsyslogconfigTestsyslog .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfigTestsyslog')]$AlertsyslogconfigTestsyslog ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $AlertsyslogconfigTestsyslog.uuid $splat = @{ Method = 'POST' Endpoint = "/api/alertsyslogconfig/${uuid}/testsyslog" Body = ConvertTo-JSON $AlertsyslogconfigTestsyslog -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($AlertsyslogconfigTestsyslog.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertsyslogconfigTestsyslog } } } Function New-AVIRestAlertsyslogconfigTestsyslogObject { <# .SYNOPSIS Configure Avi AlertSyslogConfig Object API .EXAMPLE New-AviRestAlertsyslogconfigTestsyslog .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "text": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "text": "", "uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertsyslogconfigTestsyslog') $result } } Function Remove-AVIRestAlertsyslogconfig { <# .SYNOPSIS Configure Avi AlertSyslogConfig Object API .EXAMPLE Get-AviRestAlertsyslogconfig | Remove-AviRestAlertsyslogconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertsyslogconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertsyslogconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfig')]$Alertsyslogconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertsyslogconfig') { $uuid = $Alertsyslogconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertsyslogconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertsyslogconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAnalyticsprofile { <# .SYNOPSIS Configure Avi AnalyticsProfile Object API .EXAMPLE Get-AviRestAnalyticsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/internal', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/analyticsprofile$Uuid" : '/api/analyticsprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAnalyticsprofile } } Function Set-AVIRestAnalyticsprofile { <# .SYNOPSIS Configure Avi AnalyticsProfile Object API .EXAMPLE $object = Get-AviRestAnalyticsprofile $object.name = 'New name' Set-AviRestAnalyticsprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAnalyticsprofile')]$Analyticsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Analyticsprofile.uuid $global:body = ConvertTo-JSON $Analyticsprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/analyticsprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Analyticsprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAnalyticsprofile } } } Function New-AVIRestAnalyticsprofile { <# .SYNOPSIS Configure Avi AnalyticsProfile Object API .EXAMPLE New-AviRestAnalyticsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAnalyticsprofile')]$Analyticsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/analyticsprofile" Body = ConvertTo-JSON $Analyticsprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Analyticsprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAnalyticsprofile } } } Function New-AVIRestAnalyticsprofileObject { <# .SYNOPSIS Configure Avi AnalyticsProfile Object API .EXAMPLE New-AviRestAnalyticsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAnalyticsprofile') $result } } Function Remove-AVIRestAnalyticsprofile { <# .SYNOPSIS Configure Avi AnalyticsProfile Object API .EXAMPLE Get-AviRestAnalyticsprofile | Remove-AviRestAnalyticsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Analyticsprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Analyticsprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAnalyticsprofile')]$Analyticsprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Analyticsprofile') { $uuid = $Analyticsprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/analyticsprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Analyticsprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAnalyticsAnomalyPool { <# .SYNOPSIS Configure Avi Object API .EXAMPLE Get-AviRestAnalyticsAnomalyPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/analytics/anomaly/serviceengine/{uuid},/analytics/anomaly/virtualservice/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/analytics/anomaly/pool/$Uuid" : '/api/analytics/anomaly/pool/' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAnalyticsAnomalyPool } } Function Get-AVIRestApiclifsruntime { <# .SYNOPSIS Configure Avi APICLifsRuntime Object API .EXAMPLE Get-AviRestApiclifsruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/apiclifsruntime$Uuid" : '/api/apiclifsruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestApiclifsruntime } } Function Set-AVIRestApiclifsruntime { <# .SYNOPSIS Configure Avi APICLifsRuntime Object API .EXAMPLE $object = Get-AviRestApiclifsruntime $object.name = 'New name' Set-AviRestApiclifsruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApiclifsruntime')]$Apiclifsruntime ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Apiclifsruntime.uuid $global:body = ConvertTo-JSON $Apiclifsruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/apiclifsruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Apiclifsruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestApiclifsruntime } } } Function New-AVIRestApiclifsruntime { <# .SYNOPSIS Configure Avi APICLifsRuntime Object API .EXAMPLE New-AviRestApiclifsruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApiclifsruntime')]$Apiclifsruntime ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/apiclifsruntime" Body = ConvertTo-JSON $Apiclifsruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Apiclifsruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestApiclifsruntime } } } Function New-AVIRestApiclifsruntimeObject { <# .SYNOPSIS Configure Avi APICLifsRuntime Object API .EXAMPLE New-AviRestApiclifsruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestApiclifsruntime') $result } } Function Remove-AVIRestApiclifsruntime { <# .SYNOPSIS Configure Avi APICLifsRuntime Object API .EXAMPLE Get-AviRestApiclifsruntime | Remove-AviRestApiclifsruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Apiclifsruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Apiclifsruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApiclifsruntime')]$Apiclifsruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Apiclifsruntime') { $uuid = $Apiclifsruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/apiclifsruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Apiclifsruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestApplication { <# .SYNOPSIS Configure Avi Application Object API .EXAMPLE Get-AviRestApplication .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/application$Uuid" : '/api/application' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestApplication } } Function Set-AVIRestApplication { <# .SYNOPSIS Configure Avi Application Object API .EXAMPLE $object = Get-AviRestApplication $object.name = 'New name' Set-AviRestApplication $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplication')]$Application ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Application.uuid $global:body = ConvertTo-JSON $Application -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/application/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Application.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestApplication } } } Function New-AVIRestApplication { <# .SYNOPSIS Configure Avi Application Object API .EXAMPLE New-AviRestApplication .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplication')]$Application ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/application" Body = ConvertTo-JSON $Application -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Application.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestApplication } } } Function New-AVIRestApplicationObject { <# .SYNOPSIS Configure Avi Application Object API .EXAMPLE New-AviRestApplication .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestApplication') $result } } Function Remove-AVIRestApplication { <# .SYNOPSIS Configure Avi Application Object API .EXAMPLE Get-AviRestApplication | Remove-AviRestApplication .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Application')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Application', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplication')]$Application, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Application') { $uuid = $Application.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/application/${uuid}" } if ($pscmdlet.ShouldProcess("$($Application.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestApplicationpersistenceprofile { <# .SYNOPSIS Configure Avi ApplicationPersistenceProfile Object API .EXAMPLE Get-AviRestApplicationpersistenceprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'federated_info', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/applicationpersistenceprofile$Uuid" : '/api/applicationpersistenceprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestApplicationpersistenceprofile } } Function Set-AVIRestApplicationpersistenceprofile { <# .SYNOPSIS Configure Avi ApplicationPersistenceProfile Object API .EXAMPLE $object = Get-AviRestApplicationpersistenceprofile $object.name = 'New name' Set-AviRestApplicationpersistenceprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationpersistenceprofile')]$Applicationpersistenceprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Applicationpersistenceprofile.uuid $global:body = ConvertTo-JSON $Applicationpersistenceprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/applicationpersistenceprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Applicationpersistenceprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationpersistenceprofile } } } Function New-AVIRestApplicationpersistenceprofile { <# .SYNOPSIS Configure Avi ApplicationPersistenceProfile Object API .EXAMPLE New-AviRestApplicationpersistenceprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationpersistenceprofile')]$Applicationpersistenceprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/applicationpersistenceprofile" Body = ConvertTo-JSON $Applicationpersistenceprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Applicationpersistenceprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationpersistenceprofile } } } Function New-AVIRestApplicationpersistenceprofileObject { <# .SYNOPSIS Configure Avi ApplicationPersistenceProfile Object API .EXAMPLE New-AviRestApplicationpersistenceprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestApplicationpersistenceprofile') $result } } Function Remove-AVIRestApplicationpersistenceprofile { <# .SYNOPSIS Configure Avi ApplicationPersistenceProfile Object API .EXAMPLE Get-AviRestApplicationpersistenceprofile | Remove-AviRestApplicationpersistenceprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Applicationpersistenceprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Applicationpersistenceprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationpersistenceprofile')]$Applicationpersistenceprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Applicationpersistenceprofile') { $uuid = $Applicationpersistenceprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/applicationpersistenceprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Applicationpersistenceprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestApplicationprofile { <# .SYNOPSIS Configure Avi ApplicationProfile Object API .EXAMPLE Get-AviRestApplicationprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/internal', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/applicationprofile$Uuid" : '/api/applicationprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestApplicationprofile } } Function Set-AVIRestApplicationprofile { <# .SYNOPSIS Configure Avi ApplicationProfile Object API .EXAMPLE $object = Get-AviRestApplicationprofile $object.name = 'New name' Set-AviRestApplicationprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationprofile')]$Applicationprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Applicationprofile.uuid $global:body = ConvertTo-JSON $Applicationprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/applicationprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Applicationprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationprofile } } } Function New-AVIRestApplicationprofile { <# .SYNOPSIS Configure Avi ApplicationProfile Object API .EXAMPLE New-AviRestApplicationprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationprofile')]$Applicationprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/applicationprofile" Body = ConvertTo-JSON $Applicationprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Applicationprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationprofile } } } Function New-AVIRestApplicationprofileObject { <# .SYNOPSIS Configure Avi ApplicationProfile Object API .EXAMPLE New-AviRestApplicationprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestApplicationprofile') $result } } Function Remove-AVIRestApplicationprofile { <# .SYNOPSIS Configure Avi ApplicationProfile Object API .EXAMPLE Get-AviRestApplicationprofile | Remove-AviRestApplicationprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Applicationprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Applicationprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationprofile')]$Applicationprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Applicationprofile') { $uuid = $Applicationprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/applicationprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Applicationprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAuthmappingprofile { <# .SYNOPSIS Configure Avi AuthMappingProfile Object API .EXAMPLE Get-AviRestAuthmappingprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/authmappingprofile$Uuid" : '/api/authmappingprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAuthmappingprofile } } Function Set-AVIRestAuthmappingprofile { <# .SYNOPSIS Configure Avi AuthMappingProfile Object API .EXAMPLE $object = Get-AviRestAuthmappingprofile $object.name = 'New name' Set-AviRestAuthmappingprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthmappingprofile')]$Authmappingprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Authmappingprofile.uuid $global:body = ConvertTo-JSON $Authmappingprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/authmappingprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Authmappingprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAuthmappingprofile } } } Function New-AVIRestAuthmappingprofile { <# .SYNOPSIS Configure Avi AuthMappingProfile Object API .EXAMPLE New-AviRestAuthmappingprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthmappingprofile')]$Authmappingprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/authmappingprofile" Body = ConvertTo-JSON $Authmappingprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Authmappingprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAuthmappingprofile } } } Function New-AVIRestAuthmappingprofileObject { <# .SYNOPSIS Configure Avi AuthMappingProfile Object API .EXAMPLE New-AviRestAuthmappingprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAuthmappingprofile') $result } } Function Remove-AVIRestAuthmappingprofile { <# .SYNOPSIS Configure Avi AuthMappingProfile Object API .EXAMPLE Get-AviRestAuthmappingprofile | Remove-AviRestAuthmappingprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Authmappingprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Authmappingprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthmappingprofile')]$Authmappingprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Authmappingprofile') { $uuid = $Authmappingprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/authmappingprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Authmappingprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAuthprofile { <# .SYNOPSIS Configure Avi AuthProfile Object API .EXAMPLE Get-AviRestAuthprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/authprofile$Uuid" : '/api/authprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAuthprofile } } Function Set-AVIRestAuthprofile { <# .SYNOPSIS Configure Avi AuthProfile Object API .EXAMPLE $object = Get-AviRestAuthprofile $object.name = 'New name' Set-AviRestAuthprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthprofile')]$Authprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Authprofile.uuid $global:body = ConvertTo-JSON $Authprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/authprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Authprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAuthprofile } } } Function New-AVIRestAuthprofile { <# .SYNOPSIS Configure Avi AuthProfile Object API .EXAMPLE New-AviRestAuthprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthprofile')]$Authprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/authprofile" Body = ConvertTo-JSON $Authprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Authprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAuthprofile } } } Function New-AVIRestAuthprofileObject { <# .SYNOPSIS Configure Avi AuthProfile Object API .EXAMPLE New-AviRestAuthprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAuthprofile') $result } } Function Remove-AVIRestAuthprofile { <# .SYNOPSIS Configure Avi AuthProfile Object API .EXAMPLE Get-AviRestAuthprofile | Remove-AviRestAuthprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Authprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Authprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthprofile')]$Authprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Authprofile') { $uuid = $Authprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/authprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Authprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAutoscalelaunchconfig { <# .SYNOPSIS Configure Avi AutoScaleLaunchConfig Object API .EXAMPLE Get-AviRestAutoscalelaunchconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/autoscalelaunchconfig$Uuid" : '/api/autoscalelaunchconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAutoscalelaunchconfig } } Function Set-AVIRestAutoscalelaunchconfig { <# .SYNOPSIS Configure Avi AutoScaleLaunchConfig Object API .EXAMPLE $object = Get-AviRestAutoscalelaunchconfig $object.name = 'New name' Set-AviRestAutoscalelaunchconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAutoscalelaunchconfig')]$Autoscalelaunchconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Autoscalelaunchconfig.uuid $global:body = ConvertTo-JSON $Autoscalelaunchconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/autoscalelaunchconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Autoscalelaunchconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAutoscalelaunchconfig } } } Function New-AVIRestAutoscalelaunchconfig { <# .SYNOPSIS Configure Avi AutoScaleLaunchConfig Object API .EXAMPLE New-AviRestAutoscalelaunchconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAutoscalelaunchconfig')]$Autoscalelaunchconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/autoscalelaunchconfig" Body = ConvertTo-JSON $Autoscalelaunchconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Autoscalelaunchconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAutoscalelaunchconfig } } } Function New-AVIRestAutoscalelaunchconfigObject { <# .SYNOPSIS Configure Avi AutoScaleLaunchConfig Object API .EXAMPLE New-AviRestAutoscalelaunchconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAutoscalelaunchconfig') $result } } Function Remove-AVIRestAutoscalelaunchconfig { <# .SYNOPSIS Configure Avi AutoScaleLaunchConfig Object API .EXAMPLE Get-AviRestAutoscalelaunchconfig | Remove-AviRestAutoscalelaunchconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Autoscalelaunchconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Autoscalelaunchconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAutoscalelaunchconfig')]$Autoscalelaunchconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Autoscalelaunchconfig') { $uuid = $Autoscalelaunchconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/autoscalelaunchconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Autoscalelaunchconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAvailabilityzone { <# .SYNOPSIS Configure Avi AvailabilityZone Object API .EXAMPLE Get-AviRestAvailabilityzone .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'a', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/availabilityzone$Uuid" : '/api/availabilityzone' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAvailabilityzone } } Function Set-AVIRestAvailabilityzone { <# .SYNOPSIS Configure Avi AvailabilityZone Object API .EXAMPLE $object = Get-AviRestAvailabilityzone $object.name = 'New name' Set-AviRestAvailabilityzone $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAvailabilityzone')]$Availabilityzone ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Availabilityzone.uuid $global:body = ConvertTo-JSON $Availabilityzone -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/availabilityzone/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Availabilityzone.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAvailabilityzone } } } Function New-AVIRestAvailabilityzone { <# .SYNOPSIS Configure Avi AvailabilityZone Object API .EXAMPLE New-AviRestAvailabilityzone .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAvailabilityzone')]$Availabilityzone ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/availabilityzone" Body = ConvertTo-JSON $Availabilityzone -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Availabilityzone.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAvailabilityzone } } } Function New-AVIRestAvailabilityzoneObject { <# .SYNOPSIS Configure Avi AvailabilityZone Object API .EXAMPLE New-AviRestAvailabilityzone .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAvailabilityzone') $result } } Function Remove-AVIRestAvailabilityzone { <# .SYNOPSIS Configure Avi AvailabilityZone Object API .EXAMPLE Get-AviRestAvailabilityzone | Remove-AviRestAvailabilityzone .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Availabilityzone')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Availabilityzone', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAvailabilityzone')]$Availabilityzone, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Availabilityzone') { $uuid = $Availabilityzone.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/availabilityzone/${uuid}" } if ($pscmdlet.ShouldProcess("$($Availabilityzone.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/fileobject/{uuid},/role/{uuid},/tenant/{uuid},/useractivity/{uuid},/useraccountprofile/{uuid},/clusterclouddetails/{uuid},/applicationprofile/{uuid},/applicationprofile/{uuid}/runtime/internal,/poolgroup/{uuid},/poolgroup/{uuid}/runtime/detail,/sslprofile/{uuid},/sslprofile/{uuid}/federated_info,/sslkeyandcertificate/{uuid},/sslkeyandcertificate/{uuid}/federated_info,/pkiprofile/{uuid},/pkiprofile/{uuid}/federated_info,/certificatemanagementprofile/{uuid},/vrfcontext/{uuid},/webapput/{uuid},/icapprofile/{uuid},/labelgroup/{uuid},/trafficcloneprofile/{uuid},/geodb/{uuid},/geodb/{uuid}/runtime/internal,/jobs/{uuid},/testsedatastorelevel1/{uuid},/testsedatastorelevel2/{uuid},/testsedatastorelevel3/{uuid},/analyticsprofile/{uuid},/analyticsprofile/{uuid}/runtime/internal,/albservicesfileupload/{uuid},/securechannelmapping/{uuid},/securechannelavailablelocalips/{uuid},/securechanneltoken/{uuid},/microservice/{uuid},/microservice/{uuid}/runtime/internal,/microservice/{uuid}/runtime/detail,/customipamdnsprofile/{uuid},/jwtserverprofile/{uuid},/jwtserverprofile/{uuid}/federated_info,/authprofile/{uuid},/authmappingprofile/{uuid},/wafpolicypsmgroup/{uuid},/botdetectionpolicy/{uuid},/botmapping/{uuid},/botconfigconsolidator/{uuid},/botipreputationtypemapping/{uuid},/dynamicdnsrecord/{uuid},/vsgs/{uuid},/serverautoscalepolicy/{uuid},/autoscalelaunchconfig/{uuid},/controllerproperties/{uuid},/networkservice/{uuid},/licensing/status/{uuid},/albservicesconfig/{uuid},/pool-inventory/{uuid},/poolgroup-inventory/{uuid},/vsvip-inventory/{uuid},/virtualservice-inventory/{uuid},/serviceengine-inventory/{uuid},/serviceenginegroup-inventory/{uuid},/upgradestatussummary/{uuid},/serviceenginegroup/{uuid},/serviceenginegroup/{uuid}/runtime,/serviceenginegroup/{uuid}/placement/summary,/serviceenginegroup/{uuid}/placement/detail,/serviceenginegroup/{uuid}/placement/ineligible,/network-inventory/{uuid},/networkruntime/{uuid},/vimgrnwruntime/{uuid},/cloud-inventory/{uuid},/gslb-inventory/{uuid},/gslbservice-inventory/{uuid},/wafpolicypsmgroup-inventory/{uuid},/federationcheckpoint-inventory/{uuid},/federationcheckpoint/{uuid},/federationcheckpoint/{uuid}/pendingobjects,/ipreputationdb/{uuid},/ipreputationdb/{uuid}/runtime/internal,/network/{uuid},/ipaddrgroup/{uuid},/stringgroup/{uuid},/microservicegroup/{uuid},/microservicegroup/{uuid}/runtime/detail,/wafcrs/{uuid},/systemconfiguration/{uuid},/controllersite/{uuid},/cloudconnectoruser/{uuid},/seproperties/{uuid},/csrfpolicy/{uuid},/memorybalancernotifier/{uuid},/vcenterserver/{uuid},/availabilityzone/{uuid},/nsxtsegmentruntime/{uuid},/statediffoperation/{uuid},/applicationpersistenceprofile/{uuid},/applicationpersistenceprofile/{uuid}/federated_info,/scvsstateinfo/{uuid},/scpoolserverstateinfo/{uuid},/albservicesjob/{uuid},/image/{uuid},/cloud/{uuid},/cloud/{uuid}/internals,/cloud/{uuid}/status,/cloud/{uuid}/health,/cloud/{uuid}/hosts,/cloud/{uuid}/autoscalegroup,/cloud/{uuid}/autoscalegroupservers,/cloud/{uuid}/placement/summary,/cloud/{uuid}/placement/ineligible,/cloudruntime/{uuid},/l4policyset/{uuid},/healthmonitor/{uuid},/healthmonitor/{uuid}/federated_info,/upgradestatusinfo/{uuid},/cloudproperties/{uuid},/vsdatascriptset/{uuid},/controllerportalregistration/{uuid},/user/{uuid},/networkprofile/{uuid},/networkprofile/{uuid}/runtime/internal,/dnspolicy/{uuid},/hardwaresecuritymodulegroup/{uuid},/logcontroller/{uuid},/protocolparser/{uuid},/scheduler/{uuid},/backupconfiguration/{uuid},/vimgrsevmruntime/{uuid},/vimgrvmruntime/{uuid},/vimgrhostruntime/{uuid},/vimgrclusterruntime/{uuid},/vimgrvcenterdatacenters/{uuid},/vimgrvcenternetworks/{uuid},/serviceengine/{uuid},/serviceengine/{uuid}/runtime,/serviceengine/{uuid}/runtime/detail,/serviceengine/{uuid}/internal,/serviceengine/{uuid}/ipstat,/serviceengine/{uuid}/arpstat,/serviceengine/{uuid}/icmpstat,/serviceengine/{uuid}/mbufstats,/serviceengine/{uuid}/mallocstats,/serviceengine/{uuid}/shmallocstats,/serviceengine/{uuid}/seassertstats/dp,/serviceengine/{uuid}/seassertstats/ag,/serviceengine/{uuid}/sevshbstats,/serviceengine/{uuid}/sevssplacement,/serviceengine/{uuid}/cpu,/serviceengine/{uuid}/cpu/detail,/serviceengine/{uuid}/meminfo,/serviceengine/{uuid}/interface,/serviceengine/{uuid}/bgp,/serviceengine/{uuid}/bgp/debug,/serviceengine/{uuid}/bgp/advertised_routes,/serviceengine/{uuid}/bgp/peer_status,/serviceengine/{uuid}/bgp/peer_info,/serviceengine/{uuid}/bgp/running_config,/serviceengine/{uuid}/bgp/peer_state,/serviceengine/{uuid}/bfd/running_config,/serviceengine/{uuid}/bfd/session_status,/serviceengine/{uuid}/interfacesummary,/serviceengine/{uuid}/interface/lacp,/serviceengine/{uuid}/lldp,/serviceengine/{uuid}/route,/serviceengine/{uuid}/ip6route,/serviceengine/{uuid}/arptable,/serviceengine/{uuid}/httpstats,/serviceengine/{uuid}/seruminsertionstats,/serviceengine/{uuid}/selogstats,/serviceengine/{uuid}/seauthstats,/serviceengine/{uuid}/vnicdb,/serviceengine/{uuid}/vnicdbhistory,/serviceengine/{uuid}/graphdb,/serviceengine/{uuid}/seagent,/serviceengine/{uuid}/resourcemap,/serviceengine/{uuid}/consistenthash,/serviceengine/{uuid}/appmap,/serviceengine/{uuid}/shardclientevents,/serviceengine/{uuid}/rteringstat,/serviceengine/{uuid}/sehmprobedisable,/serviceengine/{uuid}/flowtablestat,/serviceengine/{uuid}/flowtable,/serviceengine/{uuid}/vshash,/serviceengine/{uuid}/flowtable_remote,/serviceengine/{uuid}/tcp-flows,/serviceengine/{uuid}/sctp-flows,/serviceengine/{uuid}/tcp-flows/detail,/serviceengine/{uuid}/sctp-flows/detail,/serviceengine/{uuid}/metrics,/serviceengine/{uuid}/metrics/detail,/serviceengine/{uuid}/metrics/debug,/serviceengine/{uuid}/metrics/debug/summary,/serviceengine/{uuid}/dosstat,/serviceengine/{uuid}/memdist,/serviceengine/{uuid}/placement,/serviceengine/{uuid}/reservedvs,/serviceengine/{uuid}/microservice,/serviceengine/{uuid}/ndtable,/serviceengine/{uuid}/ip6stat,/serviceengine/{uuid}/icmp6stat,/serviceengine/{uuid}/natstat,/serviceengine/{uuid}/nat-flows,/serviceengine/{uuid}/network-service,/serviceengine/{uuid}/natpolicystats,/serviceengine/{uuid}/ratelimiting/rl/internal,/serviceengine/{uuid}/ratelimiting/msf/internal,/serviceengine/{uuid}/routestat,/serviceengine/{uuid}/route-flows,/serviceengine/{uuid}/objsync,/serviceengine/{uuid}/resolverdb,/serviceengine/{uuid}/resolverdbsummary,/serviceengine/{uuid}/botuacacheruntime,/serviceengine/{uuid}/botuacachestatsruntime,/serviceengine/{uuid}/placement/summary,/serviceengine/{uuid}/placement/detail,/serviceengine/{uuid}/adaptiveevents,/wafpolicy/{uuid},/wafapplicationsignatureprovider/{uuid},/ssopolicy/{uuid},/natpolicy/{uuid},/siteversion/{uuid},/webhook/{uuid},/pool/{uuid},/pool/{uuid}/runtime,/pool/{uuid}/runtime/server,/pool/{uuid}/runtime/detail,/pool/{uuid}/runtime/server/detail,/pool/{uuid}/runtime/internal,/pool/{uuid}/objsync,/pool/{uuid}/runtime/server/internal,/pool/{uuid}/runtime/debug,/pool/{uuid}/hmon,/pool/{uuid}/runtime/server/hmonstat,/pool/{uuid}/algo,/pool/{uuid}/persistence,/pool/{uuid}/connpool,/pool/{uuid}/httpcache,/pool/{uuid}/httpcachestats,/pool/{uuid}/httpcachestats/detail,/pool/{uuid}/vs,/pool/{uuid}/runtime/vs/service/server/map/kv,/pool/{uuid}/runtime/vs/service/server/map/table,/backup/{uuid},/securitymanagerdata/{uuid},/virtualservice/{uuid},/vsvip/{uuid},/ipamdnsproviderprofile/{uuid},/wafprofile/{uuid},/licensing/ledger/details/{uuid},/pingaccessagent/{uuid},/application/{uuid},/debugserviceengine/{uuid},/debugserviceengine/{uuid}/faultruntime,/debugvirtualservice/{uuid},/poolgroupdeploymentpolicy/{uuid},/httppolicyset/{uuid},/securitypolicy/{uuid},/snmptrapprofile/{uuid},/systemlimits/{uuid},/prioritylabels/{uuid},/gslb/{uuid},/gslb/{uuid}/runtime,/gslb/{uuid}/runtime/detail,/gslb/{uuid}/runtime/internal,/gslbservice/{uuid},/gslbservice/{uuid}/runtime,/gslbgeodbprofile/{uuid},/gslbgeodbprofile/{uuid}/runtime,/debugcontroller/{uuid},/errorpageprofile/{uuid},/errorpagebody/{uuid},/alertsyslogconfig/{uuid},/alertemailconfig/{uuid},/alertscriptconfig/{uuid},/alertconfig/{uuid},/actiongroupconfig/{uuid},/alertobjectlist/{uuid},/alert/{uuid},/inventoryfaultconfig/{uuid},/tenantsystemconfiguration/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/networksecuritypolicy$Uuid" : '/api/networksecuritypolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNetworksecuritypolicy } } Function Set-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNetworksecuritypolicy $object.name = 'New name' Set-AviRestNetworksecuritypolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworksecuritypolicy')]$Networksecuritypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networksecuritypolicy.uuid $global:body = ConvertTo-JSON $Networksecuritypolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networksecuritypolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networksecuritypolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworksecuritypolicy } } } Function Set-AVIRestFileobject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestFileobject $object.name = 'New name' Set-AviRestFileobject $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFileobject')]$Fileobject ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Fileobject.uuid $global:body = ConvertTo-JSON $Fileobject -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/fileobject/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Fileobject.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestFileobject } } } Function Set-AVIRestRole { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestRole $object.name = 'New name' Set-AviRestRole $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestRole')]$Role ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Role.uuid $global:body = ConvertTo-JSON $Role -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/role/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Role.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestRole } } } Function Set-AVIRestTenant { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestTenant $object.name = 'New name' Set-AviRestTenant $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenant')]$Tenant ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Tenant.uuid $global:body = ConvertTo-JSON $Tenant -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/tenant/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Tenant.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTenant } } } Function Set-AVIRestUseractivity { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestUseractivity $object.name = 'New name' Set-AviRestUseractivity $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseractivity')]$Useractivity ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Useractivity.uuid $global:body = ConvertTo-JSON $Useractivity -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/useractivity/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Useractivity.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUseractivity } } } Function Set-AVIRestUseraccountprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestUseraccountprofile $object.name = 'New name' Set-AviRestUseraccountprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseraccountprofile')]$Useraccountprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Useraccountprofile.uuid $global:body = ConvertTo-JSON $Useraccountprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/useraccountprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Useraccountprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUseraccountprofile } } } Function Set-AVIRestClusterclouddetails { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestClusterclouddetails $object.name = 'New name' Set-AviRestClusterclouddetails $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestClusterclouddetails')]$Clusterclouddetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Clusterclouddetails.uuid $global:body = ConvertTo-JSON $Clusterclouddetails -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/clusterclouddetails/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Clusterclouddetails.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestClusterclouddetails } } } Function Set-AVIRestApplicationprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestApplicationprofile $object.name = 'New name' Set-AviRestApplicationprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationprofile')]$Applicationprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Applicationprofile.uuid $global:body = ConvertTo-JSON $Applicationprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/applicationprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Applicationprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationprofile } } } Function Set-AVIRestPoolgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPoolgroup $object.name = 'New name' Set-AviRestPoolgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroup')]$Poolgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Poolgroup.uuid $global:body = ConvertTo-JSON $Poolgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/poolgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Poolgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroup } } } Function Set-AVIRestSslprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSslprofile $object.name = 'New name' Set-AviRestSslprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslprofile')]$Sslprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Sslprofile.uuid $global:body = ConvertTo-JSON $Sslprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/sslprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Sslprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSslprofile } } } Function Set-AVIRestSslkeyandcertificate { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSslkeyandcertificate $object.name = 'New name' Set-AviRestSslkeyandcertificate $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificate')]$Sslkeyandcertificate ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Sslkeyandcertificate.uuid $global:body = ConvertTo-JSON $Sslkeyandcertificate -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/sslkeyandcertificate/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Sslkeyandcertificate.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSslkeyandcertificate } } } Function Set-AVIRestPkiprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPkiprofile $object.name = 'New name' Set-AviRestPkiprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPkiprofile')]$Pkiprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Pkiprofile.uuid $global:body = ConvertTo-JSON $Pkiprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pkiprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Pkiprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPkiprofile } } } Function Set-AVIRestCertificatemanagementprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCertificatemanagementprofile $object.name = 'New name' Set-AviRestCertificatemanagementprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCertificatemanagementprofile')]$Certificatemanagementprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Certificatemanagementprofile.uuid $global:body = ConvertTo-JSON $Certificatemanagementprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/certificatemanagementprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Certificatemanagementprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCertificatemanagementprofile } } } Function Set-AVIRestVrfcontext { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVrfcontext $object.name = 'New name' Set-AviRestVrfcontext $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVrfcontext')]$Vrfcontext ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vrfcontext.uuid $global:body = ConvertTo-JSON $Vrfcontext -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vrfcontext/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vrfcontext.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVrfcontext } } } Function Set-AVIRestWebapput { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWebapput $object.name = 'New name' Set-AviRestWebapput $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebapput')]$Webapput ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Webapput.uuid $global:body = ConvertTo-JSON $Webapput -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/webapput/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Webapput.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWebapput } } } Function Set-AVIRestIcapprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestIcapprofile $object.name = 'New name' Set-AviRestIcapprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIcapprofile')]$Icapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Icapprofile.uuid $global:body = ConvertTo-JSON $Icapprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/icapprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Icapprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIcapprofile } } } Function Set-AVIRestLabelgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestLabelgroup $object.name = 'New name' Set-AviRestLabelgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLabelgroup')]$Labelgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Labelgroup.uuid $global:body = ConvertTo-JSON $Labelgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/labelgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Labelgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLabelgroup } } } Function Set-AVIRestTrafficcloneprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestTrafficcloneprofile $object.name = 'New name' Set-AviRestTrafficcloneprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTrafficcloneprofile')]$Trafficcloneprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Trafficcloneprofile.uuid $global:body = ConvertTo-JSON $Trafficcloneprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/trafficcloneprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Trafficcloneprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTrafficcloneprofile } } } Function Set-AVIRestGeodb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestGeodb $object.name = 'New name' Set-AviRestGeodb $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGeodb')]$Geodb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Geodb.uuid $global:body = ConvertTo-JSON $Geodb -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/geodb/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Geodb.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGeodb } } } Function Set-AVIRestJobs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestJobs $object.name = 'New name' Set-AviRestJobs $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJobs')]$Jobs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Jobs.uuid $global:body = ConvertTo-JSON $Jobs -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/jobs/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Jobs.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestJobs } } } Function Set-AVIRestTestsedatastorelevel1 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestTestsedatastorelevel1 $object.name = 'New name' Set-AviRestTestsedatastorelevel1 $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel1')]$Testsedatastorelevel1 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Testsedatastorelevel1.uuid $global:body = ConvertTo-JSON $Testsedatastorelevel1 -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/testsedatastorelevel1/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel1.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel1 } } } Function Set-AVIRestTestsedatastorelevel2 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestTestsedatastorelevel2 $object.name = 'New name' Set-AviRestTestsedatastorelevel2 $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel2')]$Testsedatastorelevel2 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Testsedatastorelevel2.uuid $global:body = ConvertTo-JSON $Testsedatastorelevel2 -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/testsedatastorelevel2/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel2.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel2 } } } Function Set-AVIRestTestsedatastorelevel3 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestTestsedatastorelevel3 $object.name = 'New name' Set-AviRestTestsedatastorelevel3 $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel3')]$Testsedatastorelevel3 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Testsedatastorelevel3.uuid $global:body = ConvertTo-JSON $Testsedatastorelevel3 -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/testsedatastorelevel3/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel3.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel3 } } } Function Set-AVIRestAnalyticsprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAnalyticsprofile $object.name = 'New name' Set-AviRestAnalyticsprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAnalyticsprofile')]$Analyticsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Analyticsprofile.uuid $global:body = ConvertTo-JSON $Analyticsprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/analyticsprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Analyticsprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAnalyticsprofile } } } Function Set-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlbservicesfileupload $object.name = 'New name' Set-AviRestAlbservicesfileupload $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Albservicesfileupload.uuid $global:body = ConvertTo-JSON $Albservicesfileupload -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/albservicesfileupload/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesfileupload } } } Function Set-AVIRestSecurechannelmapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSecurechannelmapping $object.name = 'New name' Set-AviRestSecurechannelmapping $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelmapping')]$Securechannelmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securechannelmapping.uuid $global:body = ConvertTo-JSON $Securechannelmapping -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securechannelmapping/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securechannelmapping.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelmapping } } } Function Set-AVIRestSecurechannelavailablelocalips { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSecurechannelavailablelocalips $object.name = 'New name' Set-AviRestSecurechannelavailablelocalips $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelavailablelocalips')]$Securechannelavailablelocalips ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securechannelavailablelocalips.uuid $global:body = ConvertTo-JSON $Securechannelavailablelocalips -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securechannelavailablelocalips/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securechannelavailablelocalips.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelavailablelocalips } } } Function Set-AVIRestSecurechanneltoken { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSecurechanneltoken $object.name = 'New name' Set-AviRestSecurechanneltoken $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechanneltoken')]$Securechanneltoken ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securechanneltoken.uuid $global:body = ConvertTo-JSON $Securechanneltoken -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securechanneltoken/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securechanneltoken.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechanneltoken } } } Function Set-AVIRestMicroservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestMicroservice $object.name = 'New name' Set-AviRestMicroservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservice')]$Microservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Microservice.uuid $global:body = ConvertTo-JSON $Microservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/microservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Microservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservice } } } Function Set-AVIRestCustomipamdnsprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCustomipamdnsprofile $object.name = 'New name' Set-AviRestCustomipamdnsprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomipamdnsprofile')]$Customipamdnsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Customipamdnsprofile.uuid $global:body = ConvertTo-JSON $Customipamdnsprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/customipamdnsprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Customipamdnsprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCustomipamdnsprofile } } } Function Set-AVIRestJwtserverprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestJwtserverprofile $object.name = 'New name' Set-AviRestJwtserverprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtserverprofile')]$Jwtserverprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Jwtserverprofile.uuid $global:body = ConvertTo-JSON $Jwtserverprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/jwtserverprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Jwtserverprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestJwtserverprofile } } } Function Set-AVIRestAuthprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAuthprofile $object.name = 'New name' Set-AviRestAuthprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthprofile')]$Authprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Authprofile.uuid $global:body = ConvertTo-JSON $Authprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/authprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Authprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAuthprofile } } } Function Set-AVIRestAuthmappingprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAuthmappingprofile $object.name = 'New name' Set-AviRestAuthmappingprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthmappingprofile')]$Authmappingprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Authmappingprofile.uuid $global:body = ConvertTo-JSON $Authmappingprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/authmappingprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Authmappingprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAuthmappingprofile } } } Function Set-AVIRestWafpolicypsmgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWafpolicypsmgroup $object.name = 'New name' Set-AviRestWafpolicypsmgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroup')]$Wafpolicypsmgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafpolicypsmgroup.uuid $global:body = ConvertTo-JSON $Wafpolicypsmgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicypsmgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafpolicypsmgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroup } } } Function Set-AVIRestBotdetectionpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestBotdetectionpolicy $object.name = 'New name' Set-AviRestBotdetectionpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotdetectionpolicy')]$Botdetectionpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botdetectionpolicy.uuid $global:body = ConvertTo-JSON $Botdetectionpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botdetectionpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botdetectionpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotdetectionpolicy } } } Function Set-AVIRestBotmapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestBotmapping $object.name = 'New name' Set-AviRestBotmapping $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotmapping')]$Botmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botmapping.uuid $global:body = ConvertTo-JSON $Botmapping -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botmapping/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botmapping.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotmapping } } } Function Set-AVIRestBotconfigconsolidator { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestBotconfigconsolidator $object.name = 'New name' Set-AviRestBotconfigconsolidator $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotconfigconsolidator')]$Botconfigconsolidator ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botconfigconsolidator.uuid $global:body = ConvertTo-JSON $Botconfigconsolidator -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botconfigconsolidator/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botconfigconsolidator.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotconfigconsolidator } } } Function Set-AVIRestBotipreputationtypemapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestBotipreputationtypemapping $object.name = 'New name' Set-AviRestBotipreputationtypemapping $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotipreputationtypemapping')]$Botipreputationtypemapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botipreputationtypemapping.uuid $global:body = ConvertTo-JSON $Botipreputationtypemapping -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botipreputationtypemapping/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botipreputationtypemapping.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotipreputationtypemapping } } } Function Set-AVIRestDynamicdnsrecord { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestDynamicdnsrecord $object.name = 'New name' Set-AviRestDynamicdnsrecord $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDynamicdnsrecord')]$Dynamicdnsrecord ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Dynamicdnsrecord.uuid $global:body = ConvertTo-JSON $Dynamicdnsrecord -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/dynamicdnsrecord/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Dynamicdnsrecord.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDynamicdnsrecord } } } Function Set-AVIRestVsgs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVsgs $object.name = 'New name' Set-AviRestVsgs $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsgs')]$Vsgs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vsgs.uuid $global:body = ConvertTo-JSON $Vsgs -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsgs/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vsgs.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsgs } } } Function Set-AVIRestServerautoscalepolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestServerautoscalepolicy $object.name = 'New name' Set-AviRestServerautoscalepolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServerautoscalepolicy')]$Serverautoscalepolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serverautoscalepolicy.uuid $global:body = ConvertTo-JSON $Serverautoscalepolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serverautoscalepolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serverautoscalepolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServerautoscalepolicy } } } Function Set-AVIRestAutoscalelaunchconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAutoscalelaunchconfig $object.name = 'New name' Set-AviRestAutoscalelaunchconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAutoscalelaunchconfig')]$Autoscalelaunchconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Autoscalelaunchconfig.uuid $global:body = ConvertTo-JSON $Autoscalelaunchconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/autoscalelaunchconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Autoscalelaunchconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAutoscalelaunchconfig } } } Function Set-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestControllerproperties $object.name = 'New name' Set-AviRestControllerproperties $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerproperties')]$Controllerproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Controllerproperties.uuid $global:body = ConvertTo-JSON $Controllerproperties -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/controllerproperties/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Controllerproperties.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestControllerproperties } } } Function Set-AVIRestNetworkservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNetworkservice $object.name = 'New name' Set-AviRestNetworkservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkservice')]$Networkservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networkservice.uuid $global:body = ConvertTo-JSON $Networkservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networkservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networkservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkservice } } } Function Set-AVIRestLicensingStatus { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestLicensingStatus $object.name = 'New name' Set-AviRestLicensingStatus $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingStatus')]$LicensingStatus ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $LicensingStatus.uuid $global:body = ConvertTo-JSON $LicensingStatus -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/licensing/status/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($LicensingStatus.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingStatus } } } Function Set-AVIRestAlbservicesconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlbservicesconfig $object.name = 'New name' Set-AviRestAlbservicesconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesconfig')]$Albservicesconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Albservicesconfig.uuid $global:body = ConvertTo-JSON $Albservicesconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/albservicesconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Albservicesconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesconfig } } } Function Set-AVIRestPoolInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPoolInventory $object.name = 'New name' Set-AviRestPoolInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolInventory')]$PoolInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolInventory.uuid $global:body = ConvertTo-JSON $PoolInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pool-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($PoolInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolInventory } } } Function Set-AVIRestPoolgroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPoolgroupInventory $object.name = 'New name' Set-AviRestPoolgroupInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupInventory')]$PoolgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolgroupInventory.uuid $global:body = ConvertTo-JSON $PoolgroupInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/poolgroup-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($PoolgroupInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupInventory } } } Function Set-AVIRestVsvipInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVsvipInventory $object.name = 'New name' Set-AviRestVsvipInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvipInventory')]$VsvipInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VsvipInventory.uuid $global:body = ConvertTo-JSON $VsvipInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsvip-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($VsvipInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsvipInventory } } } Function Set-AVIRestVirtualserviceInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVirtualserviceInventory $object.name = 'New name' Set-AviRestVirtualserviceInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceInventory')]$VirtualserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceInventory.uuid $global:body = ConvertTo-JSON $VirtualserviceInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/virtualservice-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($VirtualserviceInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceInventory } } } Function Set-AVIRestServiceengineInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestServiceengineInventory $object.name = 'New name' Set-AviRestServiceengineInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineInventory')]$ServiceengineInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineInventory.uuid $global:body = ConvertTo-JSON $ServiceengineInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceengine-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($ServiceengineInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineInventory } } } Function Set-AVIRestServiceenginegroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestServiceenginegroupInventory $object.name = 'New name' Set-AviRestServiceenginegroupInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupInventory')]$ServiceenginegroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceenginegroupInventory.uuid $global:body = ConvertTo-JSON $ServiceenginegroupInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceenginegroup-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupInventory } } } Function Set-AVIRestUpgradestatussummary { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestUpgradestatussummary $object.name = 'New name' Set-AviRestUpgradestatussummary $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatussummary')]$Upgradestatussummary ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Upgradestatussummary.uuid $global:body = ConvertTo-JSON $Upgradestatussummary -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/upgradestatussummary/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Upgradestatussummary.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatussummary } } } Function Set-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestServiceenginegroup $object.name = 'New name' Set-AviRestServiceenginegroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serviceenginegroup.uuid $global:body = ConvertTo-JSON $Serviceenginegroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceenginegroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroup } } } Function Set-AVIRestNetworkInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNetworkInventory $object.name = 'New name' Set-AviRestNetworkInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkInventory')]$NetworkInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $NetworkInventory.uuid $global:body = ConvertTo-JSON $NetworkInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/network-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($NetworkInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkInventory } } } Function Set-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNetworkruntime $object.name = 'New name' Set-AviRestNetworkruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networkruntime.uuid $global:body = ConvertTo-JSON $Networkruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networkruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkruntime } } } Function Set-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVimgrnwruntime $object.name = 'New name' Set-AviRestVimgrnwruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrnwruntime.uuid $global:body = ConvertTo-JSON $Vimgrnwruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrnwruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrnwruntime } } } Function Set-AVIRestCloudInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCloudInventory $object.name = 'New name' Set-AviRestCloudInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudInventory')]$CloudInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $CloudInventory.uuid $global:body = ConvertTo-JSON $CloudInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloud-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($CloudInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudInventory } } } Function Set-AVIRestGslbInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestGslbInventory $object.name = 'New name' Set-AviRestGslbInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbInventory')]$GslbInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $GslbInventory.uuid $global:body = ConvertTo-JSON $GslbInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslb-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($GslbInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbInventory } } } Function Set-AVIRestGslbserviceInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestGslbserviceInventory $object.name = 'New name' Set-AviRestGslbserviceInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbserviceInventory')]$GslbserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $GslbserviceInventory.uuid $global:body = ConvertTo-JSON $GslbserviceInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslbservice-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($GslbserviceInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbserviceInventory } } } Function Set-AVIRestWafpolicypsmgroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWafpolicypsmgroupInventory $object.name = 'New name' Set-AviRestWafpolicypsmgroupInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroupInventory')]$WafpolicypsmgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $WafpolicypsmgroupInventory.uuid $global:body = ConvertTo-JSON $WafpolicypsmgroupInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicypsmgroup-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($WafpolicypsmgroupInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroupInventory } } } Function Set-AVIRestFederationcheckpointInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestFederationcheckpointInventory $object.name = 'New name' Set-AviRestFederationcheckpointInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpointInventory')]$FederationcheckpointInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $FederationcheckpointInventory.uuid $global:body = ConvertTo-JSON $FederationcheckpointInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/federationcheckpoint-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($FederationcheckpointInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpointInventory } } } Function Set-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestFederationcheckpoint $object.name = 'New name' Set-AviRestFederationcheckpoint $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Federationcheckpoint.uuid $global:body = ConvertTo-JSON $Federationcheckpoint -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/federationcheckpoint/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpoint } } } Function Set-AVIRestIpreputationdb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestIpreputationdb $object.name = 'New name' Set-AviRestIpreputationdb $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpreputationdb')]$Ipreputationdb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ipreputationdb.uuid $global:body = ConvertTo-JSON $Ipreputationdb -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ipreputationdb/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ipreputationdb.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIpreputationdb } } } Function Set-AVIRestNetwork { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNetwork $object.name = 'New name' Set-AviRestNetwork $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetwork')]$Network ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Network.uuid $global:body = ConvertTo-JSON $Network -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/network/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Network.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetwork } } } Function Set-AVIRestIpaddrgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestIpaddrgroup $object.name = 'New name' Set-AviRestIpaddrgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpaddrgroup')]$Ipaddrgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ipaddrgroup.uuid $global:body = ConvertTo-JSON $Ipaddrgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ipaddrgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ipaddrgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIpaddrgroup } } } Function Set-AVIRestStringgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestStringgroup $object.name = 'New name' Set-AviRestStringgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStringgroup')]$Stringgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Stringgroup.uuid $global:body = ConvertTo-JSON $Stringgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/stringgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Stringgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestStringgroup } } } Function Set-AVIRestMicroservicegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestMicroservicegroup $object.name = 'New name' Set-AviRestMicroservicegroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservicegroup')]$Microservicegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Microservicegroup.uuid $global:body = ConvertTo-JSON $Microservicegroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/microservicegroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Microservicegroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservicegroup } } } Function Set-AVIRestWafcrs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWafcrs $object.name = 'New name' Set-AviRestWafcrs $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafcrs')]$Wafcrs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafcrs.uuid $global:body = ConvertTo-JSON $Wafcrs -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafcrs/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafcrs.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafcrs } } } Function Set-AVIRestSystemconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSystemconfiguration $object.name = 'New name' Set-AviRestSystemconfiguration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemconfiguration')]$Systemconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Systemconfiguration.uuid $global:body = ConvertTo-JSON $Systemconfiguration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/systemconfiguration/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Systemconfiguration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSystemconfiguration } } } Function Set-AVIRestControllersite { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestControllersite $object.name = 'New name' Set-AviRestControllersite $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllersite')]$Controllersite ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Controllersite.uuid $global:body = ConvertTo-JSON $Controllersite -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/controllersite/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Controllersite.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestControllersite } } } Function Set-AVIRestCloudconnectoruser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCloudconnectoruser $object.name = 'New name' Set-AviRestCloudconnectoruser $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruser')]$Cloudconnectoruser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloudconnectoruser.uuid $global:body = ConvertTo-JSON $Cloudconnectoruser -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloudconnectoruser/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloudconnectoruser.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudconnectoruser } } } Function Set-AVIRestSeproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSeproperties $object.name = 'New name' Set-AviRestSeproperties $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSeproperties')]$Seproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Seproperties.uuid $global:body = ConvertTo-JSON $Seproperties -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/seproperties/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Seproperties.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSeproperties } } } Function Set-AVIRestCsrfpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCsrfpolicy $object.name = 'New name' Set-AviRestCsrfpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCsrfpolicy')]$Csrfpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Csrfpolicy.uuid $global:body = ConvertTo-JSON $Csrfpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/csrfpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Csrfpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCsrfpolicy } } } Function Set-AVIRestMemorybalancernotifier { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestMemorybalancernotifier $object.name = 'New name' Set-AviRestMemorybalancernotifier $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMemorybalancernotifier')]$Memorybalancernotifier ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Memorybalancernotifier.uuid $global:body = ConvertTo-JSON $Memorybalancernotifier -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/memorybalancernotifier/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Memorybalancernotifier.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestMemorybalancernotifier } } } Function Set-AVIRestVcenterserver { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVcenterserver $object.name = 'New name' Set-AviRestVcenterserver $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVcenterserver')]$Vcenterserver ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vcenterserver.uuid $global:body = ConvertTo-JSON $Vcenterserver -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vcenterserver/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vcenterserver.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVcenterserver } } } Function Set-AVIRestAvailabilityzone { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAvailabilityzone $object.name = 'New name' Set-AviRestAvailabilityzone $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAvailabilityzone')]$Availabilityzone ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Availabilityzone.uuid $global:body = ConvertTo-JSON $Availabilityzone -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/availabilityzone/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Availabilityzone.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAvailabilityzone } } } Function Set-AVIRestNsxtsegmentruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNsxtsegmentruntime $object.name = 'New name' Set-AviRestNsxtsegmentruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNsxtsegmentruntime')]$Nsxtsegmentruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Nsxtsegmentruntime.uuid $global:body = ConvertTo-JSON $Nsxtsegmentruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/nsxtsegmentruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Nsxtsegmentruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNsxtsegmentruntime } } } Function Set-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestStatediffoperation $object.name = 'New name' Set-AviRestStatediffoperation $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Statediffoperation.uuid $global:body = ConvertTo-JSON $Statediffoperation -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/statediffoperation/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } } Function Set-AVIRestApplicationpersistenceprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestApplicationpersistenceprofile $object.name = 'New name' Set-AviRestApplicationpersistenceprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationpersistenceprofile')]$Applicationpersistenceprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Applicationpersistenceprofile.uuid $global:body = ConvertTo-JSON $Applicationpersistenceprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/applicationpersistenceprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Applicationpersistenceprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationpersistenceprofile } } } Function Set-AVIRestScvsstateinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestScvsstateinfo $object.name = 'New name' Set-AviRestScvsstateinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScvsstateinfo')]$Scvsstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Scvsstateinfo.uuid $global:body = ConvertTo-JSON $Scvsstateinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/scvsstateinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Scvsstateinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestScvsstateinfo } } } Function Set-AVIRestScpoolserverstateinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestScpoolserverstateinfo $object.name = 'New name' Set-AviRestScpoolserverstateinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScpoolserverstateinfo')]$Scpoolserverstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Scpoolserverstateinfo.uuid $global:body = ConvertTo-JSON $Scpoolserverstateinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/scpoolserverstateinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Scpoolserverstateinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestScpoolserverstateinfo } } } Function Set-AVIRestAlbservicesjob { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlbservicesjob $object.name = 'New name' Set-AviRestAlbservicesjob $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesjob')]$Albservicesjob ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Albservicesjob.uuid $global:body = ConvertTo-JSON $Albservicesjob -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/albservicesjob/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Albservicesjob.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesjob } } } Function Set-AVIRestImage { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestImage $object.name = 'New name' Set-AviRestImage $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestImage')]$Image ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Image.uuid $global:body = ConvertTo-JSON $Image -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/image/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Image.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestImage } } } Function Set-AVIRestCloud { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCloud $object.name = 'New name' Set-AviRestCloud $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloud')]$Cloud ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloud.uuid $global:body = ConvertTo-JSON $Cloud -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloud/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloud.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloud } } } Function Set-AVIRestCloudGc { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCloudGc $object.name = 'New name' Set-AviRestCloudGc $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudGc')]$CloudGc ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $CloudGc.uuid $global:body = ConvertTo-JSON $CloudGc -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloud/${uuid}/gc/" Body = $body } if ($pscmdlet.ShouldProcess("$($CloudGc.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudGc } } } Function Set-AVIRestCloudruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCloudruntime $object.name = 'New name' Set-AviRestCloudruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudruntime')]$Cloudruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloudruntime.uuid $global:body = ConvertTo-JSON $Cloudruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloudruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloudruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudruntime } } } Function Set-AVIRestL4policyset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestL4policyset $object.name = 'New name' Set-AviRestL4policyset $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestL4policyset')]$L4policyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $L4policyset.uuid $global:body = ConvertTo-JSON $L4policyset -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/l4policyset/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($L4policyset.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestL4policyset } } } Function Set-AVIRestHealthmonitor { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestHealthmonitor $object.name = 'New name' Set-AviRestHealthmonitor $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHealthmonitor')]$Healthmonitor ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Healthmonitor.uuid $global:body = ConvertTo-JSON $Healthmonitor -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/healthmonitor/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Healthmonitor.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestHealthmonitor } } } Function Set-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestUpgradestatusinfo $object.name = 'New name' Set-AviRestUpgradestatusinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Upgradestatusinfo.uuid $global:body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/upgradestatusinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function Set-AVIRestCloudproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestCloudproperties $object.name = 'New name' Set-AviRestCloudproperties $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudproperties')]$Cloudproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloudproperties.uuid $global:body = ConvertTo-JSON $Cloudproperties -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloudproperties/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloudproperties.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudproperties } } } Function Set-AVIRestVsdatascriptset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVsdatascriptset $object.name = 'New name' Set-AviRestVsdatascriptset $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsdatascriptset')]$Vsdatascriptset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vsdatascriptset.uuid $global:body = ConvertTo-JSON $Vsdatascriptset -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsdatascriptset/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vsdatascriptset.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsdatascriptset } } } Function Set-AVIRestControllerportalregistration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestControllerportalregistration $object.name = 'New name' Set-AviRestControllerportalregistration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerportalregistration')]$Controllerportalregistration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Controllerportalregistration.uuid $global:body = ConvertTo-JSON $Controllerportalregistration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/controllerportalregistration/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Controllerportalregistration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestControllerportalregistration } } } Function Set-AVIRestUser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestUser $object.name = 'New name' Set-AviRestUser $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUser')]$User ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $User.uuid $global:body = ConvertTo-JSON $User -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/user/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($User.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUser } } } Function Set-AVIRestNetworkprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNetworkprofile $object.name = 'New name' Set-AviRestNetworkprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkprofile')]$Networkprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networkprofile.uuid $global:body = ConvertTo-JSON $Networkprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networkprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networkprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkprofile } } } Function Set-AVIRestDnspolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestDnspolicy $object.name = 'New name' Set-AviRestDnspolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDnspolicy')]$Dnspolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Dnspolicy.uuid $global:body = ConvertTo-JSON $Dnspolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/dnspolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Dnspolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDnspolicy } } } Function Set-AVIRestHardwaresecuritymodulegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestHardwaresecuritymodulegroup $object.name = 'New name' Set-AviRestHardwaresecuritymodulegroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHardwaresecuritymodulegroup')]$Hardwaresecuritymodulegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Hardwaresecuritymodulegroup.uuid $global:body = ConvertTo-JSON $Hardwaresecuritymodulegroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/hardwaresecuritymodulegroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Hardwaresecuritymodulegroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestHardwaresecuritymodulegroup } } } Function Set-AVIRestLogcontroller { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestLogcontroller $object.name = 'New name' Set-AviRestLogcontroller $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLogcontroller')]$Logcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Logcontroller.uuid $global:body = ConvertTo-JSON $Logcontroller -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/logcontroller/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Logcontroller.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLogcontroller } } } Function Set-AVIRestProtocolparser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestProtocolparser $object.name = 'New name' Set-AviRestProtocolparser $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestProtocolparser')]$Protocolparser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Protocolparser.uuid $global:body = ConvertTo-JSON $Protocolparser -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/protocolparser/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Protocolparser.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestProtocolparser } } } Function Set-AVIRestScheduler { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestScheduler $object.name = 'New name' Set-AviRestScheduler $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScheduler')]$Scheduler ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Scheduler.uuid $global:body = ConvertTo-JSON $Scheduler -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/scheduler/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Scheduler.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestScheduler } } } Function Set-AVIRestBackupconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestBackupconfiguration $object.name = 'New name' Set-AviRestBackupconfiguration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackupconfiguration')]$Backupconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Backupconfiguration.uuid $global:body = ConvertTo-JSON $Backupconfiguration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/backupconfiguration/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Backupconfiguration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBackupconfiguration } } } Function Set-AVIRestVimgrsevmruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVimgrsevmruntime $object.name = 'New name' Set-AviRestVimgrsevmruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrsevmruntime')]$Vimgrsevmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrsevmruntime.uuid $global:body = ConvertTo-JSON $Vimgrsevmruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrsevmruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrsevmruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrsevmruntime } } } Function Set-AVIRestVimgrvmruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVimgrvmruntime $object.name = 'New name' Set-AviRestVimgrvmruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvmruntime')]$Vimgrvmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrvmruntime.uuid $global:body = ConvertTo-JSON $Vimgrvmruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrvmruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrvmruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvmruntime } } } Function Set-AVIRestVimgrhostruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVimgrhostruntime $object.name = 'New name' Set-AviRestVimgrhostruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntime')]$Vimgrhostruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrhostruntime.uuid $global:body = ConvertTo-JSON $Vimgrhostruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrhostruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrhostruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntime } } } Function Set-AVIRestVimgrclusterruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVimgrclusterruntime $object.name = 'New name' Set-AviRestVimgrclusterruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrclusterruntime')]$Vimgrclusterruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrclusterruntime.uuid $global:body = ConvertTo-JSON $Vimgrclusterruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrclusterruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrclusterruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrclusterruntime } } } Function Set-AVIRestVimgrvcenterdatacenters { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVimgrvcenterdatacenters $object.name = 'New name' Set-AviRestVimgrvcenterdatacenters $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterdatacenters')]$Vimgrvcenterdatacenters ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrvcenterdatacenters.uuid $global:body = ConvertTo-JSON $Vimgrvcenterdatacenters -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrvcenterdatacenters/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterdatacenters.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterdatacenters } } } Function Set-AVIRestVimgrvcenternetworks { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVimgrvcenternetworks $object.name = 'New name' Set-AviRestVimgrvcenternetworks $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenternetworks')]$Vimgrvcenternetworks ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrvcenternetworks.uuid $global:body = ConvertTo-JSON $Vimgrvcenternetworks -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrvcenternetworks/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrvcenternetworks.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenternetworks } } } Function Set-AVIRestServiceengine { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestServiceengine $object.name = 'New name' Set-AviRestServiceengine $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengine')]$Serviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serviceengine.uuid $global:body = ConvertTo-JSON $Serviceengine -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceengine/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serviceengine.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengine } } } Function Set-AVIRestWafpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWafpolicy $object.name = 'New name' Set-AviRestWafpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicy')]$Wafpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafpolicy.uuid $global:body = ConvertTo-JSON $Wafpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicy } } } Function Set-AVIRestWafpolicyUpdateCrsRules { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWafpolicyUpdateCrsRules $object.name = 'New name' Set-AviRestWafpolicyUpdateCrsRules $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicyUpdateCrsRules')]$WafpolicyUpdateCrsRules ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $WafpolicyUpdateCrsRules.uuid $global:body = ConvertTo-JSON $WafpolicyUpdateCrsRules -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicy/${uuid}/update-crs-rules" Body = $body } if ($pscmdlet.ShouldProcess("$($WafpolicyUpdateCrsRules.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicyUpdateCrsRules } } } Function Set-AVIRestWafapplicationsignatureprovider { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWafapplicationsignatureprovider $object.name = 'New name' Set-AviRestWafapplicationsignatureprovider $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafapplicationsignatureprovider')]$Wafapplicationsignatureprovider ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafapplicationsignatureprovider.uuid $global:body = ConvertTo-JSON $Wafapplicationsignatureprovider -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafapplicationsignatureprovider/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafapplicationsignatureprovider.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafapplicationsignatureprovider } } } Function Set-AVIRestSsopolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSsopolicy $object.name = 'New name' Set-AviRestSsopolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSsopolicy')]$Ssopolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ssopolicy.uuid $global:body = ConvertTo-JSON $Ssopolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ssopolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ssopolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSsopolicy } } } Function Set-AVIRestNatpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestNatpolicy $object.name = 'New name' Set-AviRestNatpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNatpolicy')]$Natpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Natpolicy.uuid $global:body = ConvertTo-JSON $Natpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/natpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Natpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNatpolicy } } } Function Set-AVIRestSiteversion { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSiteversion $object.name = 'New name' Set-AviRestSiteversion $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSiteversion')]$Siteversion ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Siteversion.uuid $global:body = ConvertTo-JSON $Siteversion -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/siteversion/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Siteversion.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSiteversion } } } Function Set-AVIRestWebhook { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWebhook $object.name = 'New name' Set-AviRestWebhook $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebhook')]$Webhook ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Webhook.uuid $global:body = ConvertTo-JSON $Webhook -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/webhook/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Webhook.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWebhook } } } Function Set-AVIRestPool { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPool $object.name = 'New name' Set-AviRestPool $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPool')]$Pool ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Pool.uuid $global:body = ConvertTo-JSON $Pool -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pool/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Pool.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPool } } } Function Set-AVIRestBackup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestBackup $object.name = 'New name' Set-AviRestBackup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackup')]$Backup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Backup.uuid $global:body = ConvertTo-JSON $Backup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/backup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Backup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBackup } } } Function Set-AVIRestSecuritymanagerdata { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSecuritymanagerdata $object.name = 'New name' Set-AviRestSecuritymanagerdata $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritymanagerdata')]$Securitymanagerdata ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securitymanagerdata.uuid $global:body = ConvertTo-JSON $Securitymanagerdata -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securitymanagerdata/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securitymanagerdata.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritymanagerdata } } } Function Set-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVirtualservice $object.name = 'New name' Set-AviRestVirtualservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Virtualservice.uuid $global:body = ConvertTo-JSON $Virtualservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/virtualservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualservice } } } Function Set-AVIRestVsvip { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestVsvip $object.name = 'New name' Set-AviRestVsvip $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvip')]$Vsvip ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vsvip.uuid $global:body = ConvertTo-JSON $Vsvip -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsvip/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vsvip.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsvip } } } Function Set-AVIRestIpamdnsproviderprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestIpamdnsproviderprofile $object.name = 'New name' Set-AviRestIpamdnsproviderprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpamdnsproviderprofile')]$Ipamdnsproviderprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ipamdnsproviderprofile.uuid $global:body = ConvertTo-JSON $Ipamdnsproviderprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ipamdnsproviderprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ipamdnsproviderprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIpamdnsproviderprofile } } } Function Set-AVIRestWafprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestWafprofile $object.name = 'New name' Set-AviRestWafprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafprofile')]$Wafprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafprofile.uuid $global:body = ConvertTo-JSON $Wafprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafprofile } } } Function Set-AVIRestLicensingLedgerDetails { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestLicensingLedgerDetails $object.name = 'New name' Set-AviRestLicensingLedgerDetails $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingLedgerDetails')]$LicensingLedgerDetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $LicensingLedgerDetails.uuid $global:body = ConvertTo-JSON $LicensingLedgerDetails -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/licensing/ledger/details/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($LicensingLedgerDetails.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingLedgerDetails } } } Function Set-AVIRestPingaccessagent { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPingaccessagent $object.name = 'New name' Set-AviRestPingaccessagent $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPingaccessagent')]$Pingaccessagent ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Pingaccessagent.uuid $global:body = ConvertTo-JSON $Pingaccessagent -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pingaccessagent/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Pingaccessagent.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPingaccessagent } } } Function Set-AVIRestApplication { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestApplication $object.name = 'New name' Set-AviRestApplication $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplication')]$Application ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Application.uuid $global:body = ConvertTo-JSON $Application -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/application/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Application.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestApplication } } } Function Set-AVIRestDebugserviceengine { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestDebugserviceengine $object.name = 'New name' Set-AviRestDebugserviceengine $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugserviceengine')]$Debugserviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Debugserviceengine.uuid $global:body = ConvertTo-JSON $Debugserviceengine -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/debugserviceengine/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Debugserviceengine.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDebugserviceengine } } } Function Set-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestDebugvirtualservice $object.name = 'New name' Set-AviRestDebugvirtualservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Debugvirtualservice.uuid $global:body = ConvertTo-JSON $Debugvirtualservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/debugvirtualservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDebugvirtualservice } } } Function Set-AVIRestPoolgroupdeploymentpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPoolgroupdeploymentpolicy $object.name = 'New name' Set-AviRestPoolgroupdeploymentpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupdeploymentpolicy')]$Poolgroupdeploymentpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Poolgroupdeploymentpolicy.uuid $global:body = ConvertTo-JSON $Poolgroupdeploymentpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/poolgroupdeploymentpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Poolgroupdeploymentpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupdeploymentpolicy } } } Function Set-AVIRestHttppolicyset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestHttppolicyset $object.name = 'New name' Set-AviRestHttppolicyset $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHttppolicyset')]$Httppolicyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Httppolicyset.uuid $global:body = ConvertTo-JSON $Httppolicyset -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/httppolicyset/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Httppolicyset.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestHttppolicyset } } } Function Set-AVIRestSecuritypolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSecuritypolicy $object.name = 'New name' Set-AviRestSecuritypolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritypolicy')]$Securitypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securitypolicy.uuid $global:body = ConvertTo-JSON $Securitypolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securitypolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securitypolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritypolicy } } } Function Set-AVIRestSnmptrapprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSnmptrapprofile $object.name = 'New name' Set-AviRestSnmptrapprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofile')]$Snmptrapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Snmptrapprofile.uuid $global:body = ConvertTo-JSON $Snmptrapprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/snmptrapprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Snmptrapprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSnmptrapprofile } } } Function Set-AVIRestSystemlimits { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestSystemlimits $object.name = 'New name' Set-AviRestSystemlimits $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemlimits')]$Systemlimits ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Systemlimits.uuid $global:body = ConvertTo-JSON $Systemlimits -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/systemlimits/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Systemlimits.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSystemlimits } } } Function Set-AVIRestPrioritylabels { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestPrioritylabels $object.name = 'New name' Set-AviRestPrioritylabels $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPrioritylabels')]$Prioritylabels ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Prioritylabels.uuid $global:body = ConvertTo-JSON $Prioritylabels -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/prioritylabels/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Prioritylabels.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPrioritylabels } } } Function Set-AVIRestGslb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestGslb $object.name = 'New name' Set-AviRestGslb $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslb')]$Gslb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Gslb.uuid $global:body = ConvertTo-JSON $Gslb -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslb/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Gslb.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslb } } } Function Set-AVIRestGslbservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestGslbservice $object.name = 'New name' Set-AviRestGslbservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbservice')]$Gslbservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Gslbservice.uuid $global:body = ConvertTo-JSON $Gslbservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslbservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Gslbservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbservice } } } Function Set-AVIRestGslbgeodbprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestGslbgeodbprofile $object.name = 'New name' Set-AviRestGslbgeodbprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbgeodbprofile')]$Gslbgeodbprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Gslbgeodbprofile.uuid $global:body = ConvertTo-JSON $Gslbgeodbprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslbgeodbprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Gslbgeodbprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbgeodbprofile } } } Function Set-AVIRestDebugcontroller { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestDebugcontroller $object.name = 'New name' Set-AviRestDebugcontroller $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugcontroller')]$Debugcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Debugcontroller.uuid $global:body = ConvertTo-JSON $Debugcontroller -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/debugcontroller/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Debugcontroller.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDebugcontroller } } } Function Set-AVIRestErrorpageprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestErrorpageprofile $object.name = 'New name' Set-AviRestErrorpageprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpageprofile')]$Errorpageprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Errorpageprofile.uuid $global:body = ConvertTo-JSON $Errorpageprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/errorpageprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Errorpageprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpageprofile } } } Function Set-AVIRestErrorpagebody { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestErrorpagebody $object.name = 'New name' Set-AviRestErrorpagebody $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpagebody')]$Errorpagebody ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Errorpagebody.uuid $global:body = ConvertTo-JSON $Errorpagebody -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/errorpagebody/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Errorpagebody.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpagebody } } } Function Set-AVIRestAlertsyslogconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlertsyslogconfig $object.name = 'New name' Set-AviRestAlertsyslogconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfig')]$Alertsyslogconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertsyslogconfig.uuid $global:body = ConvertTo-JSON $Alertsyslogconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertsyslogconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertsyslogconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertsyslogconfig } } } Function Set-AVIRestAlertemailconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlertemailconfig $object.name = 'New name' Set-AviRestAlertemailconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfig')]$Alertemailconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertemailconfig.uuid $global:body = ConvertTo-JSON $Alertemailconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertemailconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertemailconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertemailconfig } } } Function Set-AVIRestAlertscriptconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlertscriptconfig $object.name = 'New name' Set-AviRestAlertscriptconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertscriptconfig')]$Alertscriptconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertscriptconfig.uuid $global:body = ConvertTo-JSON $Alertscriptconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertscriptconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertscriptconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertscriptconfig } } } Function Set-AVIRestAlertconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlertconfig $object.name = 'New name' Set-AviRestAlertconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertconfig')]$Alertconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertconfig.uuid $global:body = ConvertTo-JSON $Alertconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertconfig } } } Function Set-AVIRestActiongroupconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestActiongroupconfig $object.name = 'New name' Set-AviRestActiongroupconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestActiongroupconfig')]$Actiongroupconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Actiongroupconfig.uuid $global:body = ConvertTo-JSON $Actiongroupconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/actiongroupconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Actiongroupconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestActiongroupconfig } } } Function Set-AVIRestAlertobjectlist { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlertobjectlist $object.name = 'New name' Set-AviRestAlertobjectlist $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertobjectlist')]$Alertobjectlist ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alertobjectlist.uuid $global:body = ConvertTo-JSON $Alertobjectlist -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alertobjectlist/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alertobjectlist.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlertobjectlist } } } Function Set-AVIRestAlert { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestAlert $object.name = 'New name' Set-AviRestAlert $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlert')]$Alert ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Alert.uuid $global:body = ConvertTo-JSON $Alert -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/alert/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Alert.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestAlert } } } Function Set-AVIRestInventoryfaultconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestInventoryfaultconfig $object.name = 'New name' Set-AviRestInventoryfaultconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestInventoryfaultconfig')]$Inventoryfaultconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Inventoryfaultconfig.uuid $global:body = ConvertTo-JSON $Inventoryfaultconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/inventoryfaultconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Inventoryfaultconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestInventoryfaultconfig } } } Function Set-AVIRestTenantsystemconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE $object = Get-AviRestTenantsystemconfiguration $object.name = 'New name' Set-AviRestTenantsystemconfiguration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenantsystemconfiguration')]$Tenantsystemconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Tenantsystemconfiguration.uuid $global:body = ConvertTo-JSON $Tenantsystemconfiguration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/tenantsystemconfiguration/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Tenantsystemconfiguration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTenantsystemconfiguration } } } Function New-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworksecuritypolicy')]$Networksecuritypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networksecuritypolicy" Body = ConvertTo-JSON $Networksecuritypolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networksecuritypolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworksecuritypolicy } } } Function New-AVIRestFileobject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestFileobject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFileobject')]$Fileobject ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/fileobject" Body = ConvertTo-JSON $Fileobject -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Fileobject.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestFileobject } } } Function New-AVIRestRole { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestRole .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestRole')]$Role ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/role" Body = ConvertTo-JSON $Role -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Role.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestRole } } } Function New-AVIRestTenant { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTenant .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenant')]$Tenant ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/tenant" Body = ConvertTo-JSON $Tenant -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Tenant.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTenant } } } Function New-AVIRestUseractivity { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUseractivity .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseractivity')]$Useractivity ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/useractivity" Body = ConvertTo-JSON $Useractivity -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Useractivity.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUseractivity } } } Function New-AVIRestUseraccountprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUseraccountprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseraccountprofile')]$Useraccountprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/useraccountprofile" Body = ConvertTo-JSON $Useraccountprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Useraccountprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUseraccountprofile } } } Function New-AVIRestClusterclouddetails { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestClusterclouddetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestClusterclouddetails')]$Clusterclouddetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/clusterclouddetails" Body = ConvertTo-JSON $Clusterclouddetails -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Clusterclouddetails.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestClusterclouddetails } } } Function New-AVIRestApplicationprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestApplicationprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationprofile')]$Applicationprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/applicationprofile" Body = ConvertTo-JSON $Applicationprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Applicationprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationprofile } } } Function New-AVIRestPoolgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroup')]$Poolgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup" Body = ConvertTo-JSON $Poolgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Poolgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroup } } } Function New-AVIRestPoolgroupClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroupClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupClear')]$PoolgroupClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup/clear" Body = ConvertTo-JSON $PoolgroupClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolgroupClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupClear } } } Function New-AVIRestSslprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSslprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslprofile')]$Sslprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/sslprofile" Body = ConvertTo-JSON $Sslprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Sslprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSslprofile } } } Function New-AVIRestSslkeyandcertificate { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSslkeyandcertificate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificate')]$Sslkeyandcertificate ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/sslkeyandcertificate" Body = ConvertTo-JSON $Sslkeyandcertificate -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Sslkeyandcertificate.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSslkeyandcertificate } } } Function New-AVIRestPkiprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPkiprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPkiprofile')]$Pkiprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pkiprofile" Body = ConvertTo-JSON $Pkiprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Pkiprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPkiprofile } } } Function New-AVIRestCertificatemanagementprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCertificatemanagementprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCertificatemanagementprofile')]$Certificatemanagementprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/certificatemanagementprofile" Body = ConvertTo-JSON $Certificatemanagementprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Certificatemanagementprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCertificatemanagementprofile } } } Function New-AVIRestVrfcontext { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVrfcontext .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVrfcontext')]$Vrfcontext ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vrfcontext" Body = ConvertTo-JSON $Vrfcontext -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vrfcontext.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVrfcontext } } } Function New-AVIRestWebapput { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWebapput .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebapput')]$Webapput ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/webapput" Body = ConvertTo-JSON $Webapput -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Webapput.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWebapput } } } Function New-AVIRestIcapprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIcapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIcapprofile')]$Icapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/icapprofile" Body = ConvertTo-JSON $Icapprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Icapprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIcapprofile } } } Function New-AVIRestLabelgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLabelgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLabelgroup')]$Labelgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/labelgroup" Body = ConvertTo-JSON $Labelgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Labelgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLabelgroup } } } Function New-AVIRestTrafficcloneprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTrafficcloneprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTrafficcloneprofile')]$Trafficcloneprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/trafficcloneprofile" Body = ConvertTo-JSON $Trafficcloneprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Trafficcloneprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTrafficcloneprofile } } } Function New-AVIRestGeodb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGeodb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGeodb')]$Geodb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/geodb" Body = ConvertTo-JSON $Geodb -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Geodb.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGeodb } } } Function New-AVIRestJobs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestJobs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJobs')]$Jobs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/jobs" Body = ConvertTo-JSON $Jobs -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Jobs.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestJobs } } } Function New-AVIRestTestsedatastorelevel1 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTestsedatastorelevel1 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel1')]$Testsedatastorelevel1 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/testsedatastorelevel1" Body = ConvertTo-JSON $Testsedatastorelevel1 -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel1.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel1 } } } Function New-AVIRestTestsedatastorelevel2 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTestsedatastorelevel2 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel2')]$Testsedatastorelevel2 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/testsedatastorelevel2" Body = ConvertTo-JSON $Testsedatastorelevel2 -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel2.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel2 } } } Function New-AVIRestTestsedatastorelevel3 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTestsedatastorelevel3 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel3')]$Testsedatastorelevel3 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/testsedatastorelevel3" Body = ConvertTo-JSON $Testsedatastorelevel3 -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel3.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel3 } } } Function New-AVIRestAnalyticsprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAnalyticsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAnalyticsprofile')]$Analyticsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/analyticsprofile" Body = ConvertTo-JSON $Analyticsprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Analyticsprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAnalyticsprofile } } } Function New-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/albservicesfileupload" Body = ConvertTo-JSON $Albservicesfileupload -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesfileupload } } } Function New-AVIRestSecurechannelmapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecurechannelmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelmapping')]$Securechannelmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securechannelmapping" Body = ConvertTo-JSON $Securechannelmapping -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securechannelmapping.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelmapping } } } Function New-AVIRestSecurechannelavailablelocalips { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecurechannelavailablelocalips .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelavailablelocalips')]$Securechannelavailablelocalips ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securechannelavailablelocalips" Body = ConvertTo-JSON $Securechannelavailablelocalips -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securechannelavailablelocalips.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelavailablelocalips } } } Function New-AVIRestSecurechanneltoken { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecurechanneltoken .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechanneltoken')]$Securechanneltoken ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securechanneltoken" Body = ConvertTo-JSON $Securechanneltoken -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securechanneltoken.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechanneltoken } } } Function New-AVIRestMicroservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestMicroservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservice')]$Microservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/microservice" Body = ConvertTo-JSON $Microservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Microservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservice } } } Function New-AVIRestCustomipamdnsprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCustomipamdnsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomipamdnsprofile')]$Customipamdnsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/customipamdnsprofile" Body = ConvertTo-JSON $Customipamdnsprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Customipamdnsprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCustomipamdnsprofile } } } Function New-AVIRestJwtserverprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestJwtserverprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtserverprofile')]$Jwtserverprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/jwtserverprofile" Body = ConvertTo-JSON $Jwtserverprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Jwtserverprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestJwtserverprofile } } } Function New-AVIRestAuthprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAuthprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthprofile')]$Authprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/authprofile" Body = ConvertTo-JSON $Authprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Authprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAuthprofile } } } Function New-AVIRestAuthmappingprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAuthmappingprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthmappingprofile')]$Authmappingprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/authmappingprofile" Body = ConvertTo-JSON $Authmappingprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Authmappingprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAuthmappingprofile } } } Function New-AVIRestWafpolicypsmgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafpolicypsmgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroup')]$Wafpolicypsmgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafpolicypsmgroup" Body = ConvertTo-JSON $Wafpolicypsmgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafpolicypsmgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroup } } } Function New-AVIRestBotdetectionpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotdetectionpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotdetectionpolicy')]$Botdetectionpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botdetectionpolicy" Body = ConvertTo-JSON $Botdetectionpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botdetectionpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotdetectionpolicy } } } Function New-AVIRestBotmapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotmapping')]$Botmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botmapping" Body = ConvertTo-JSON $Botmapping -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botmapping.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotmapping } } } Function New-AVIRestBotconfigconsolidator { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotconfigconsolidator .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotconfigconsolidator')]$Botconfigconsolidator ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botconfigconsolidator" Body = ConvertTo-JSON $Botconfigconsolidator -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botconfigconsolidator.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotconfigconsolidator } } } Function New-AVIRestBotipreputationtypemapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotipreputationtypemapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotipreputationtypemapping')]$Botipreputationtypemapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botipreputationtypemapping" Body = ConvertTo-JSON $Botipreputationtypemapping -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botipreputationtypemapping.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotipreputationtypemapping } } } Function New-AVIRestDynamicdnsrecord { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDynamicdnsrecord .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDynamicdnsrecord')]$Dynamicdnsrecord ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/dynamicdnsrecord" Body = ConvertTo-JSON $Dynamicdnsrecord -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Dynamicdnsrecord.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDynamicdnsrecord } } } Function New-AVIRestVsgs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsgs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsgs')]$Vsgs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsgs" Body = ConvertTo-JSON $Vsgs -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vsgs.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsgs } } } Function New-AVIRestServerautoscalepolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServerautoscalepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServerautoscalepolicy')]$Serverautoscalepolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serverautoscalepolicy" Body = ConvertTo-JSON $Serverautoscalepolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serverautoscalepolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServerautoscalepolicy } } } Function New-AVIRestAutoscalelaunchconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAutoscalelaunchconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAutoscalelaunchconfig')]$Autoscalelaunchconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/autoscalelaunchconfig" Body = ConvertTo-JSON $Autoscalelaunchconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Autoscalelaunchconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAutoscalelaunchconfig } } } Function New-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestControllerproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerproperties')]$Controllerproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/controllerproperties" Body = ConvertTo-JSON $Controllerproperties -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Controllerproperties.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestControllerproperties } } } Function New-AVIRestNetworkservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkservice')]$Networkservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networkservice" Body = ConvertTo-JSON $Networkservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networkservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkservice } } } Function New-AVIRestLicensingStatus { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLicensingStatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingStatus')]$LicensingStatus ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/licensing/status" Body = ConvertTo-JSON $LicensingStatus -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($LicensingStatus.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingStatus } } } Function New-AVIRestAlbservicesconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlbservicesconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesconfig')]$Albservicesconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/albservicesconfig" Body = ConvertTo-JSON $Albservicesconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Albservicesconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesconfig } } } Function New-AVIRestPoolInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolInventory')]$PoolInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pool-inventory" Body = ConvertTo-JSON $PoolInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolInventory } } } Function New-AVIRestPoolgroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupInventory')]$PoolgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup-inventory" Body = ConvertTo-JSON $PoolgroupInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolgroupInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupInventory } } } Function New-AVIRestVsvipInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsvipInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvipInventory')]$VsvipInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsvip-inventory" Body = ConvertTo-JSON $VsvipInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VsvipInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsvipInventory } } } Function New-AVIRestVirtualserviceInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVirtualserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceInventory')]$VirtualserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice-inventory" Body = ConvertTo-JSON $VirtualserviceInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceInventory } } } Function New-AVIRestServiceengineInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineInventory')]$ServiceengineInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine-inventory" Body = ConvertTo-JSON $ServiceengineInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineInventory } } } Function New-AVIRestServiceenginegroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceenginegroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupInventory')]$ServiceenginegroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup-inventory" Body = ConvertTo-JSON $ServiceenginegroupInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupInventory } } } Function New-AVIRestUpgradestatussummary { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUpgradestatussummary .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatussummary')]$Upgradestatussummary ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/upgradestatussummary" Body = ConvertTo-JSON $Upgradestatussummary -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Upgradestatussummary.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatussummary } } } Function New-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup" Body = ConvertTo-JSON $Serviceenginegroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroup } } } Function New-AVIRestServiceenginegroupClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceenginegroupClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupClear')]$ServiceenginegroupClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup/clear" Body = ConvertTo-JSON $ServiceenginegroupClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupClear } } } Function New-AVIRestNetworkInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkInventory')]$NetworkInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/network-inventory" Body = ConvertTo-JSON $NetworkInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($NetworkInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkInventory } } } Function New-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networkruntime" Body = ConvertTo-JSON $Networkruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkruntime } } } Function New-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrnwruntime" Body = ConvertTo-JSON $Vimgrnwruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrnwruntime } } } Function New-AVIRestCloudInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudInventory')]$CloudInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloud-inventory" Body = ConvertTo-JSON $CloudInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($CloudInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudInventory } } } Function New-AVIRestGslbInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbInventory')]$GslbInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslb-inventory" Body = ConvertTo-JSON $GslbInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($GslbInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbInventory } } } Function New-AVIRestGslbserviceInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbserviceInventory')]$GslbserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslbservice-inventory" Body = ConvertTo-JSON $GslbserviceInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($GslbserviceInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbserviceInventory } } } Function New-AVIRestWafpolicypsmgroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafpolicypsmgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroupInventory')]$WafpolicypsmgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafpolicypsmgroup-inventory" Body = ConvertTo-JSON $WafpolicypsmgroupInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($WafpolicypsmgroupInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroupInventory } } } Function New-AVIRestFederationcheckpointInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestFederationcheckpointInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpointInventory')]$FederationcheckpointInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/federationcheckpoint-inventory" Body = ConvertTo-JSON $FederationcheckpointInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($FederationcheckpointInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpointInventory } } } Function New-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/federationcheckpoint" Body = ConvertTo-JSON $Federationcheckpoint -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpoint } } } Function New-AVIRestIpreputationdb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIpreputationdb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpreputationdb')]$Ipreputationdb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ipreputationdb" Body = ConvertTo-JSON $Ipreputationdb -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ipreputationdb.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIpreputationdb } } } Function New-AVIRestNetwork { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetwork')]$Network ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/network" Body = ConvertTo-JSON $Network -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Network.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetwork } } } Function New-AVIRestIpaddrgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIpaddrgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpaddrgroup')]$Ipaddrgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ipaddrgroup" Body = ConvertTo-JSON $Ipaddrgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ipaddrgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIpaddrgroup } } } Function New-AVIRestStringgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestStringgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStringgroup')]$Stringgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/stringgroup" Body = ConvertTo-JSON $Stringgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Stringgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestStringgroup } } } Function New-AVIRestMicroservicegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestMicroservicegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservicegroup')]$Microservicegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/microservicegroup" Body = ConvertTo-JSON $Microservicegroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Microservicegroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservicegroup } } } Function New-AVIRestWafcrs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafcrs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafcrs')]$Wafcrs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafcrs" Body = ConvertTo-JSON $Wafcrs -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafcrs.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafcrs } } } Function New-AVIRestSystemconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemconfiguration')]$Systemconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/systemconfiguration" Body = ConvertTo-JSON $Systemconfiguration -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Systemconfiguration.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSystemconfiguration } } } Function New-AVIRestSystemconfigurationSystestemail { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSystemconfigurationSystestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemconfigurationSystestemail')]$SystemconfigurationSystestemail ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/systemconfiguration/systestemail" Body = ConvertTo-JSON $SystemconfigurationSystestemail -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($SystemconfigurationSystestemail.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSystemconfigurationSystestemail } } } Function New-AVIRestControllersite { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestControllersite .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllersite')]$Controllersite ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/controllersite" Body = ConvertTo-JSON $Controllersite -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Controllersite.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestControllersite } } } Function New-AVIRestCloudconnectoruser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudconnectoruser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruser')]$Cloudconnectoruser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloudconnectoruser" Body = ConvertTo-JSON $Cloudconnectoruser -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloudconnectoruser.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudconnectoruser } } } Function New-AVIRestSeproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSeproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSeproperties')]$Seproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/seproperties" Body = ConvertTo-JSON $Seproperties -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Seproperties.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSeproperties } } } Function New-AVIRestCsrfpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCsrfpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCsrfpolicy')]$Csrfpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/csrfpolicy" Body = ConvertTo-JSON $Csrfpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Csrfpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCsrfpolicy } } } Function New-AVIRestMemorybalancernotifier { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestMemorybalancernotifier .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMemorybalancernotifier')]$Memorybalancernotifier ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/memorybalancernotifier" Body = ConvertTo-JSON $Memorybalancernotifier -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Memorybalancernotifier.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestMemorybalancernotifier } } } Function New-AVIRestVcenterserver { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVcenterserver .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVcenterserver')]$Vcenterserver ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vcenterserver" Body = ConvertTo-JSON $Vcenterserver -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vcenterserver.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVcenterserver } } } Function New-AVIRestAvailabilityzone { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAvailabilityzone .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAvailabilityzone')]$Availabilityzone ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/availabilityzone" Body = ConvertTo-JSON $Availabilityzone -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Availabilityzone.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAvailabilityzone } } } Function New-AVIRestNsxtsegmentruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNsxtsegmentruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNsxtsegmentruntime')]$Nsxtsegmentruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/nsxtsegmentruntime" Body = ConvertTo-JSON $Nsxtsegmentruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Nsxtsegmentruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNsxtsegmentruntime } } } Function New-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/statediffoperation" Body = ConvertTo-JSON $Statediffoperation -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } } Function New-AVIRestApplicationpersistenceprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestApplicationpersistenceprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationpersistenceprofile')]$Applicationpersistenceprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/applicationpersistenceprofile" Body = ConvertTo-JSON $Applicationpersistenceprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Applicationpersistenceprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestApplicationpersistenceprofile } } } Function New-AVIRestScvsstateinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestScvsstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScvsstateinfo')]$Scvsstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/scvsstateinfo" Body = ConvertTo-JSON $Scvsstateinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Scvsstateinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestScvsstateinfo } } } Function New-AVIRestScpoolserverstateinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestScpoolserverstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScpoolserverstateinfo')]$Scpoolserverstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/scpoolserverstateinfo" Body = ConvertTo-JSON $Scpoolserverstateinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Scpoolserverstateinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestScpoolserverstateinfo } } } Function New-AVIRestAlbservicesjob { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlbservicesjob .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesjob')]$Albservicesjob ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/albservicesjob" Body = ConvertTo-JSON $Albservicesjob -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Albservicesjob.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlbservicesjob } } } Function New-AVIRestImage { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestImage .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestImage')]$Image ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/image" Body = ConvertTo-JSON $Image -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Image.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestImage } } } Function New-AVIRestCloud { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloud .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloud')]$Cloud ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloud" Body = ConvertTo-JSON $Cloud -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloud.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloud } } } Function New-AVIRestCloudList { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudList .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudList')]$CloudList ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloud/list" Body = ConvertTo-JSON $CloudList -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($CloudList.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudList } } } Function New-AVIRestCloudruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudruntime')]$Cloudruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloudruntime" Body = ConvertTo-JSON $Cloudruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloudruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudruntime } } } Function New-AVIRestL4policyset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestL4policyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestL4policyset')]$L4policyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/l4policyset" Body = ConvertTo-JSON $L4policyset -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($L4policyset.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestL4policyset } } } Function New-AVIRestHealthmonitor { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestHealthmonitor .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHealthmonitor')]$Healthmonitor ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/healthmonitor" Body = ConvertTo-JSON $Healthmonitor -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Healthmonitor.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestHealthmonitor } } } Function New-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/upgradestatusinfo" Body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function New-AVIRestCloudproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudproperties')]$Cloudproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloudproperties" Body = ConvertTo-JSON $Cloudproperties -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloudproperties.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudproperties } } } Function New-AVIRestVsdatascriptset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsdatascriptset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsdatascriptset')]$Vsdatascriptset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsdatascriptset" Body = ConvertTo-JSON $Vsdatascriptset -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vsdatascriptset.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsdatascriptset } } } Function New-AVIRestControllerportalregistration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestControllerportalregistration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerportalregistration')]$Controllerportalregistration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/controllerportalregistration" Body = ConvertTo-JSON $Controllerportalregistration -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Controllerportalregistration.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestControllerportalregistration } } } Function New-AVIRestUser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUser')]$User ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/user" Body = ConvertTo-JSON $User -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($User.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUser } } } Function New-AVIRestNetworkprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkprofile')]$Networkprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networkprofile" Body = ConvertTo-JSON $Networkprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networkprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkprofile } } } Function New-AVIRestDnspolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDnspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDnspolicy')]$Dnspolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/dnspolicy" Body = ConvertTo-JSON $Dnspolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Dnspolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDnspolicy } } } Function New-AVIRestHardwaresecuritymodulegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestHardwaresecuritymodulegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHardwaresecuritymodulegroup')]$Hardwaresecuritymodulegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/hardwaresecuritymodulegroup" Body = ConvertTo-JSON $Hardwaresecuritymodulegroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Hardwaresecuritymodulegroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestHardwaresecuritymodulegroup } } } Function New-AVIRestLogcontroller { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLogcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLogcontroller')]$Logcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/logcontroller" Body = ConvertTo-JSON $Logcontroller -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Logcontroller.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLogcontroller } } } Function New-AVIRestProtocolparser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestProtocolparser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestProtocolparser')]$Protocolparser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/protocolparser" Body = ConvertTo-JSON $Protocolparser -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Protocolparser.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestProtocolparser } } } Function New-AVIRestScheduler { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestScheduler .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScheduler')]$Scheduler ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/scheduler" Body = ConvertTo-JSON $Scheduler -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Scheduler.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestScheduler } } } Function New-AVIRestBackupconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBackupconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackupconfiguration')]$Backupconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/backupconfiguration" Body = ConvertTo-JSON $Backupconfiguration -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Backupconfiguration.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBackupconfiguration } } } Function New-AVIRestVimgrsevmruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrsevmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrsevmruntime')]$Vimgrsevmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrsevmruntime" Body = ConvertTo-JSON $Vimgrsevmruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrsevmruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrsevmruntime } } } Function New-AVIRestVimgrvmruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrvmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvmruntime')]$Vimgrvmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvmruntime" Body = ConvertTo-JSON $Vimgrvmruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrvmruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvmruntime } } } Function New-AVIRestVimgrhostruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrhostruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntime')]$Vimgrhostruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrhostruntime" Body = ConvertTo-JSON $Vimgrhostruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrhostruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntime } } } Function New-AVIRestVimgrhostruntimeGetquarantinedhosts { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrhostruntimeGetquarantinedhosts .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntimeGetquarantinedhosts')]$VimgrhostruntimeGetquarantinedhosts ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrhostruntime/getquarantinedhosts" Body = ConvertTo-JSON $VimgrhostruntimeGetquarantinedhosts -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrhostruntimeGetquarantinedhosts.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntimeGetquarantinedhosts } } } Function New-AVIRestVimgrclusterruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrclusterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrclusterruntime')]$Vimgrclusterruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrclusterruntime" Body = ConvertTo-JSON $Vimgrclusterruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrclusterruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrclusterruntime } } } Function New-AVIRestVimgrvcenterdatacenters { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrvcenterdatacenters .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterdatacenters')]$Vimgrvcenterdatacenters ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterdatacenters" Body = ConvertTo-JSON $Vimgrvcenterdatacenters -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterdatacenters.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterdatacenters } } } Function New-AVIRestVimgrvcenternetworks { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrvcenternetworks .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenternetworks')]$Vimgrvcenternetworks ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenternetworks" Body = ConvertTo-JSON $Vimgrvcenternetworks -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrvcenternetworks.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenternetworks } } } Function New-AVIRestServiceengine { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengine')]$Serviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine" Body = ConvertTo-JSON $Serviceengine -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serviceengine.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengine } } } Function New-AVIRestServiceengineClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineClear')]$ServiceengineClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/clear" Body = ConvertTo-JSON $ServiceengineClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineClear } } } Function New-AVIRestWafpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicy')]$Wafpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafpolicy" Body = ConvertTo-JSON $Wafpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicy } } } Function New-AVIRestWafapplicationsignatureprovider { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafapplicationsignatureprovider .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafapplicationsignatureprovider')]$Wafapplicationsignatureprovider ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafapplicationsignatureprovider" Body = ConvertTo-JSON $Wafapplicationsignatureprovider -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafapplicationsignatureprovider.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafapplicationsignatureprovider } } } Function New-AVIRestSsopolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSsopolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSsopolicy')]$Ssopolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ssopolicy" Body = ConvertTo-JSON $Ssopolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ssopolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSsopolicy } } } Function New-AVIRestNatpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNatpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNatpolicy')]$Natpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/natpolicy" Body = ConvertTo-JSON $Natpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Natpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNatpolicy } } } Function New-AVIRestSiteversion { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSiteversion .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSiteversion')]$Siteversion ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/siteversion" Body = ConvertTo-JSON $Siteversion -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Siteversion.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSiteversion } } } Function New-AVIRestWebhook { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWebhook .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebhook')]$Webhook ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/webhook" Body = ConvertTo-JSON $Webhook -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Webhook.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWebhook } } } Function New-AVIRestPool { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPool')]$Pool ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pool" Body = ConvertTo-JSON $Pool -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Pool.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPool } } } Function New-AVIRestPoolClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolClear')]$PoolClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pool/clear" Body = ConvertTo-JSON $PoolClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolClear } } } Function New-AVIRestBackup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBackup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackup')]$Backup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/backup" Body = ConvertTo-JSON $Backup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Backup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBackup } } } Function New-AVIRestSecuritymanagerdata { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecuritymanagerdata .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritymanagerdata')]$Securitymanagerdata ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securitymanagerdata" Body = ConvertTo-JSON $Securitymanagerdata -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securitymanagerdata.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritymanagerdata } } } Function New-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice" Body = ConvertTo-JSON $Virtualservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualservice } } } Function New-AVIRestVsvip { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsvip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvip')]$Vsvip ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsvip" Body = ConvertTo-JSON $Vsvip -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vsvip.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsvip } } } Function New-AVIRestIpamdnsproviderprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIpamdnsproviderprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpamdnsproviderprofile')]$Ipamdnsproviderprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ipamdnsproviderprofile" Body = ConvertTo-JSON $Ipamdnsproviderprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ipamdnsproviderprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIpamdnsproviderprofile } } } Function New-AVIRestWafprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafprofile')]$Wafprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafprofile" Body = ConvertTo-JSON $Wafprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafprofile } } } Function New-AVIRestLicensingLedgerDetails { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLicensingLedgerDetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingLedgerDetails')]$LicensingLedgerDetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/licensing/ledger/details" Body = ConvertTo-JSON $LicensingLedgerDetails -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($LicensingLedgerDetails.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingLedgerDetails } } } Function New-AVIRestPingaccessagent { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPingaccessagent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPingaccessagent')]$Pingaccessagent ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pingaccessagent" Body = ConvertTo-JSON $Pingaccessagent -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Pingaccessagent.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPingaccessagent } } } Function New-AVIRestApplication { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestApplication .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplication')]$Application ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/application" Body = ConvertTo-JSON $Application -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Application.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestApplication } } } Function New-AVIRestDebugserviceengine { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDebugserviceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugserviceengine')]$Debugserviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/debugserviceengine" Body = ConvertTo-JSON $Debugserviceengine -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Debugserviceengine.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDebugserviceengine } } } Function New-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/debugvirtualservice" Body = ConvertTo-JSON $Debugvirtualservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDebugvirtualservice } } } Function New-AVIRestPoolgroupdeploymentpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroupdeploymentpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupdeploymentpolicy')]$Poolgroupdeploymentpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroupdeploymentpolicy" Body = ConvertTo-JSON $Poolgroupdeploymentpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Poolgroupdeploymentpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupdeploymentpolicy } } } Function New-AVIRestHttppolicyset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestHttppolicyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHttppolicyset')]$Httppolicyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/httppolicyset" Body = ConvertTo-JSON $Httppolicyset -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Httppolicyset.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestHttppolicyset } } } Function New-AVIRestSecuritypolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritypolicy')]$Securitypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securitypolicy" Body = ConvertTo-JSON $Securitypolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securitypolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritypolicy } } } Function New-AVIRestSnmptrapprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSnmptrapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofile')]$Snmptrapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/snmptrapprofile" Body = ConvertTo-JSON $Snmptrapprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Snmptrapprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSnmptrapprofile } } } Function New-AVIRestSystemlimits { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSystemlimits .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemlimits')]$Systemlimits ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/systemlimits" Body = ConvertTo-JSON $Systemlimits -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Systemlimits.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSystemlimits } } } Function New-AVIRestPrioritylabels { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPrioritylabels .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPrioritylabels')]$Prioritylabels ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/prioritylabels" Body = ConvertTo-JSON $Prioritylabels -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Prioritylabels.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPrioritylabels } } } Function New-AVIRestGslb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslb')]$Gslb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslb" Body = ConvertTo-JSON $Gslb -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Gslb.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslb } } } Function New-AVIRestGslbservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbservice')]$Gslbservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslbservice" Body = ConvertTo-JSON $Gslbservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Gslbservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbservice } } } Function New-AVIRestGslbgeodbprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbgeodbprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbgeodbprofile')]$Gslbgeodbprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslbgeodbprofile" Body = ConvertTo-JSON $Gslbgeodbprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Gslbgeodbprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbgeodbprofile } } } Function New-AVIRestDebugcontroller { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDebugcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugcontroller')]$Debugcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/debugcontroller" Body = ConvertTo-JSON $Debugcontroller -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Debugcontroller.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDebugcontroller } } } Function New-AVIRestErrorpageprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestErrorpageprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpageprofile')]$Errorpageprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/errorpageprofile" Body = ConvertTo-JSON $Errorpageprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Errorpageprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpageprofile } } } Function New-AVIRestErrorpagebody { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestErrorpagebody .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpagebody')]$Errorpagebody ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/errorpagebody" Body = ConvertTo-JSON $Errorpagebody -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Errorpagebody.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpagebody } } } Function New-AVIRestAlertsyslogconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertsyslogconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfig')]$Alertsyslogconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertsyslogconfig" Body = ConvertTo-JSON $Alertsyslogconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertsyslogconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertsyslogconfig } } } Function New-AVIRestAlertemailconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertemailconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfig')]$Alertemailconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertemailconfig" Body = ConvertTo-JSON $Alertemailconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertemailconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertemailconfig } } } Function New-AVIRestAlertscriptconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertscriptconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertscriptconfig')]$Alertscriptconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertscriptconfig" Body = ConvertTo-JSON $Alertscriptconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertscriptconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertscriptconfig } } } Function New-AVIRestAlertconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertconfig')]$Alertconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertconfig" Body = ConvertTo-JSON $Alertconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertconfig } } } Function New-AVIRestActiongroupconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestActiongroupconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestActiongroupconfig')]$Actiongroupconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/actiongroupconfig" Body = ConvertTo-JSON $Actiongroupconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Actiongroupconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestActiongroupconfig } } } Function New-AVIRestAlertobjectlist { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertobjectlist .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertobjectlist')]$Alertobjectlist ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alertobjectlist" Body = ConvertTo-JSON $Alertobjectlist -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alertobjectlist.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertobjectlist } } } Function New-AVIRestAlert { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlert .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlert')]$Alert ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/alert" Body = ConvertTo-JSON $Alert -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Alert.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlert } } } Function New-AVIRestInventoryfaultconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestInventoryfaultconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestInventoryfaultconfig')]$Inventoryfaultconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/inventoryfaultconfig" Body = ConvertTo-JSON $Inventoryfaultconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Inventoryfaultconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestInventoryfaultconfig } } } Function New-AVIRestTenantsystemconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTenantsystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenantsystemconfiguration')]$Tenantsystemconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/tenantsystemconfiguration" Body = ConvertTo-JSON $Tenantsystemconfiguration -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Tenantsystemconfiguration.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTenantsystemconfiguration } } } Function New-AVIRestNetworksecuritypolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworksecuritypolicy') $result } } Function New-AVIRestFileobjectObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestFileobject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestFileobject') $result } } Function New-AVIRestRoleObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestRole .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestRole') $result } } Function New-AVIRestTenantObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTenant .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTenant') $result } } Function New-AVIRestUseractivityObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUseractivity .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUseractivity') $result } } Function New-AVIRestUseraccountprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUseraccountprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUseraccountprofile') $result } } Function New-AVIRestClusterclouddetailsObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestClusterclouddetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestClusterclouddetails') $result } } Function New-AVIRestApplicationprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestApplicationprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestApplicationprofile') $result } } Function New-AVIRestPoolgroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroup') $result } } Function New-AVIRestPoolgroupClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroupClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroupClear') $result } } Function New-AVIRestSslprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSslprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSslprofile') $result } } Function New-AVIRestSslkeyandcertificateObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSslkeyandcertificate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSslkeyandcertificate') $result } } Function New-AVIRestPkiprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPkiprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPkiprofile') $result } } Function New-AVIRestCertificatemanagementprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCertificatemanagementprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCertificatemanagementprofile') $result } } Function New-AVIRestVrfcontextObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVrfcontext .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVrfcontext') $result } } Function New-AVIRestWebapputObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWebapput .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWebapput') $result } } Function New-AVIRestIcapprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIcapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIcapprofile') $result } } Function New-AVIRestLabelgroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLabelgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLabelgroup') $result } } Function New-AVIRestTrafficcloneprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTrafficcloneprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTrafficcloneprofile') $result } } Function New-AVIRestGeodbObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGeodb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGeodb') $result } } Function New-AVIRestTestsedatastorelevel1Object { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTestsedatastorelevel1 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTestsedatastorelevel1') $result } } Function New-AVIRestTestsedatastorelevel2Object { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTestsedatastorelevel2 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTestsedatastorelevel2') $result } } Function New-AVIRestTestsedatastorelevel3Object { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTestsedatastorelevel3 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTestsedatastorelevel3') $result } } Function New-AVIRestAnalyticsprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAnalyticsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAnalyticsprofile') $result } } Function New-AVIRestAlbservicesfileuploadObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlbservicesfileupload') $result } } Function New-AVIRestSecurechannelmappingObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecurechannelmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecurechannelmapping') $result } } Function New-AVIRestSecurechannelavailablelocalipsObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecurechannelavailablelocalips .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecurechannelavailablelocalips') $result } } Function New-AVIRestSecurechanneltokenObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecurechanneltoken .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecurechanneltoken') $result } } Function New-AVIRestMicroserviceObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestMicroservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestMicroservice') $result } } Function New-AVIRestCustomipamdnsprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCustomipamdnsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCustomipamdnsprofile') $result } } Function New-AVIRestJwtserverprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestJwtserverprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestJwtserverprofile') $result } } Function New-AVIRestAuthprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAuthprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAuthprofile') $result } } Function New-AVIRestAuthmappingprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAuthmappingprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAuthmappingprofile') $result } } Function New-AVIRestWafpolicypsmgroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafpolicypsmgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafpolicypsmgroup') $result } } Function New-AVIRestBotdetectionpolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotdetectionpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotdetectionpolicy') $result } } Function New-AVIRestBotmappingObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotmapping') $result } } Function New-AVIRestBotconfigconsolidatorObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotconfigconsolidator .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotconfigconsolidator') $result } } Function New-AVIRestBotipreputationtypemappingObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBotipreputationtypemapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotipreputationtypemapping') $result } } Function New-AVIRestDynamicdnsrecordObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDynamicdnsrecord .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDynamicdnsrecord') $result } } Function New-AVIRestVsgsObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsgs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsgs') $result } } Function New-AVIRestServerautoscalepolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServerautoscalepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServerautoscalepolicy') $result } } Function New-AVIRestAutoscalelaunchconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAutoscalelaunchconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAutoscalelaunchconfig') $result } } Function New-AVIRestControllerpropertiesObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestControllerproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestControllerproperties') $result } } Function New-AVIRestNetworkserviceObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkservice') $result } } Function New-AVIRestLicensingStatusObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLicensingStatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLicensingStatus') $result } } Function New-AVIRestAlbservicesconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlbservicesconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlbservicesconfig') $result } } Function New-AVIRestPoolInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolInventory') $result } } Function New-AVIRestPoolgroupInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroupInventory') $result } } Function New-AVIRestVsvipInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsvipInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsvipInventory') $result } } Function New-AVIRestServiceengineInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineInventory') $result } } Function New-AVIRestServiceenginegroupInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceenginegroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceenginegroupInventory') $result } } Function New-AVIRestUpgradestatussummaryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUpgradestatussummary .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUpgradestatussummary') $result } } Function New-AVIRestServiceenginegroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceenginegroup') $result } } Function New-AVIRestServiceenginegroupClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceenginegroupClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceenginegroupClear') $result } } Function New-AVIRestNetworkInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkInventory') $result } } Function New-AVIRestNetworkruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkruntime') $result } } Function New-AVIRestVimgrnwruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrnwruntime') $result } } Function New-AVIRestCloudInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudInventory') $result } } Function New-AVIRestGslbInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbInventory') $result } } Function New-AVIRestGslbserviceInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbserviceInventory') $result } } Function New-AVIRestWafpolicypsmgroupInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafpolicypsmgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafpolicypsmgroupInventory') $result } } Function New-AVIRestFederationcheckpointInventoryObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestFederationcheckpointInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestFederationcheckpointInventory') $result } } Function New-AVIRestFederationcheckpointObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestFederationcheckpoint') $result } } Function New-AVIRestIpreputationdbObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIpreputationdb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIpreputationdb') $result } } Function New-AVIRestNetworkObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetwork') $result } } Function New-AVIRestIpaddrgroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIpaddrgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIpaddrgroup') $result } } Function New-AVIRestStringgroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestStringgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestStringgroup') $result } } Function New-AVIRestMicroservicegroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestMicroservicegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestMicroservicegroup') $result } } Function New-AVIRestWafcrsObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafcrs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafcrs') $result } } Function New-AVIRestSystemconfigurationObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSystemconfiguration') $result } } Function New-AVIRestSystemconfigurationSystestemailObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSystemconfigurationSystestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "subject": "", "text": "", "to_emails": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "cc_emails": "", "subject": "", "text": "", "to_emails": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSystemconfigurationSystestemail') $result } } Function New-AVIRestControllersiteObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestControllersite .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestControllersite') $result } } Function New-AVIRestCloudconnectoruserObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudconnectoruser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudconnectoruser') $result } } Function New-AVIRestSepropertiesObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSeproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSeproperties') $result } } Function New-AVIRestCsrfpolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCsrfpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCsrfpolicy') $result } } Function New-AVIRestVcenterserverObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVcenterserver .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVcenterserver') $result } } Function New-AVIRestAvailabilityzoneObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAvailabilityzone .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAvailabilityzone') $result } } Function New-AVIRestNsxtsegmentruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNsxtsegmentruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNsxtsegmentruntime') $result } } Function New-AVIRestStatediffoperationObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestStatediffoperation') $result } } Function New-AVIRestApplicationpersistenceprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestApplicationpersistenceprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestApplicationpersistenceprofile') $result } } Function New-AVIRestScvsstateinfoObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestScvsstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestScvsstateinfo') $result } } Function New-AVIRestScpoolserverstateinfoObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestScpoolserverstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestScpoolserverstateinfo') $result } } Function New-AVIRestAlbservicesjobObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlbservicesjob .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlbservicesjob') $result } } Function New-AVIRestImageObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestImage .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestImage') $result } } Function New-AVIRestCloudObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloud .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloud') $result } } Function New-AVIRestCloudListObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudList .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudList') $result } } Function New-AVIRestCloudruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudruntime') $result } } Function New-AVIRestL4policysetObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestL4policyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestL4policyset') $result } } Function New-AVIRestHealthmonitorObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestHealthmonitor .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestHealthmonitor') $result } } Function New-AVIRestUpgradestatusinfoObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUpgradestatusinfo') $result } } Function New-AVIRestCloudpropertiesObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudproperties') $result } } Function New-AVIRestVsdatascriptsetObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsdatascriptset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsdatascriptset') $result } } Function New-AVIRestControllerportalregistrationObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestControllerportalregistration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestControllerportalregistration') $result } } Function New-AVIRestUserObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestUser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUser') $result } } Function New-AVIRestNetworkprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNetworkprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkprofile') $result } } Function New-AVIRestDnspolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDnspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDnspolicy') $result } } Function New-AVIRestHardwaresecuritymodulegroupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestHardwaresecuritymodulegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestHardwaresecuritymodulegroup') $result } } Function New-AVIRestLogcontrollerObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLogcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLogcontroller') $result } } Function New-AVIRestProtocolparserObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestProtocolparser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestProtocolparser') $result } } Function New-AVIRestSchedulerObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestScheduler .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestScheduler') $result } } Function New-AVIRestBackupconfigurationObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBackupconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBackupconfiguration') $result } } Function New-AVIRestVimgrsevmruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrsevmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrsevmruntime') $result } } Function New-AVIRestVimgrvmruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrvmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvmruntime') $result } } Function New-AVIRestVimgrhostruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrhostruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrhostruntime') $result } } Function New-AVIRestVimgrclusterruntimeObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVimgrclusterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrclusterruntime') $result } } Function New-AVIRestServiceengineObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengine') $result } } Function New-AVIRestServiceengineClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineClear') $result } } Function New-AVIRestWafpolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafpolicy') $result } } Function New-AVIRestWafapplicationsignatureproviderObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafapplicationsignatureprovider .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafapplicationsignatureprovider') $result } } Function New-AVIRestSsopolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSsopolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSsopolicy') $result } } Function New-AVIRestNatpolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestNatpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNatpolicy') $result } } Function New-AVIRestSiteversionObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSiteversion .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSiteversion') $result } } Function New-AVIRestWebhookObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWebhook .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWebhook') $result } } Function New-AVIRestPoolObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPool') $result } } Function New-AVIRestPoolClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolClear') $result } } Function New-AVIRestBackupObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestBackup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBackup') $result } } Function New-AVIRestSecuritymanagerdataObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecuritymanagerdata .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecuritymanagerdata') $result } } Function New-AVIRestVirtualserviceObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualservice') $result } } Function New-AVIRestVsvipObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestVsvip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsvip') $result } } Function New-AVIRestIpamdnsproviderprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestIpamdnsproviderprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIpamdnsproviderprofile') $result } } Function New-AVIRestWafprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestWafprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafprofile') $result } } Function New-AVIRestLicensingLedgerDetailsObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestLicensingLedgerDetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLicensingLedgerDetails') $result } } Function New-AVIRestPingaccessagentObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPingaccessagent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPingaccessagent') $result } } Function New-AVIRestApplicationObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestApplication .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestApplication') $result } } Function New-AVIRestDebugserviceengineObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDebugserviceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDebugserviceengine') $result } } Function New-AVIRestDebugvirtualserviceObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDebugvirtualservice') $result } } Function New-AVIRestPoolgroupdeploymentpolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroupdeploymentpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroupdeploymentpolicy') $result } } Function New-AVIRestHttppolicysetObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestHttppolicyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestHttppolicyset') $result } } Function New-AVIRestSecuritypolicyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecuritypolicy') $result } } Function New-AVIRestSnmptrapprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSnmptrapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSnmptrapprofile') $result } } Function New-AVIRestSystemlimitsObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSystemlimits .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSystemlimits') $result } } Function New-AVIRestPrioritylabelsObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPrioritylabels .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPrioritylabels') $result } } Function New-AVIRestGslbObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslb') $result } } Function New-AVIRestGslbserviceObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbservice') $result } } Function New-AVIRestGslbgeodbprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestGslbgeodbprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbgeodbprofile') $result } } Function New-AVIRestDebugcontrollerObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestDebugcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDebugcontroller') $result } } Function New-AVIRestErrorpageprofileObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestErrorpageprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestErrorpageprofile') $result } } Function New-AVIRestErrorpagebodyObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestErrorpagebody .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestErrorpagebody') $result } } Function New-AVIRestAlertsyslogconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertsyslogconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertsyslogconfig') $result } } Function New-AVIRestAlertemailconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertemailconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertemailconfig') $result } } Function New-AVIRestAlertscriptconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertscriptconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertscriptconfig') $result } } Function New-AVIRestAlertconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertconfig') $result } } Function New-AVIRestActiongroupconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestActiongroupconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestActiongroupconfig') $result } } Function New-AVIRestAlertobjectlistObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertobjectlist .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertobjectlist') $result } } Function New-AVIRestAlertObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlert .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlert') $result } } Function New-AVIRestInventoryfaultconfigObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestInventoryfaultconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestInventoryfaultconfig') $result } } Function New-AVIRestTenantsystemconfigurationObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestTenantsystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTenantsystemconfiguration') $result } } Function Invoke-AVIRestPoolgroupEnable_primary_poolClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestPoolgroupEnable_primary_poolClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupEnable_primary_poolClear')]$PoolgroupEnable_primary_poolClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolgroupEnable_primary_poolClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup/${uuid}/enable_primary_pool/clear" Body = ConvertTo-JSON $PoolgroupEnable_primary_poolClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolgroupEnable_primary_poolClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupEnable_primary_poolClear } } } Function Invoke-AVIRestSslkeyandcertificateRenew { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestSslkeyandcertificateRenew .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificateRenew')]$SslkeyandcertificateRenew ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $SslkeyandcertificateRenew.uuid $splat = @{ Method = 'POST' Endpoint = "/api/sslkeyandcertificate/${uuid}/renew" Body = ConvertTo-JSON $SslkeyandcertificateRenew -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($SslkeyandcertificateRenew.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSslkeyandcertificateRenew } } } Function Invoke-AVIRestServiceenginegroupRedistribute { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceenginegroupRedistribute .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupRedistribute')]$ServiceenginegroupRedistribute ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceenginegroupRedistribute.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup/${uuid}/redistribute" Body = ConvertTo-JSON $ServiceenginegroupRedistribute -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupRedistribute.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupRedistribute } } } Function Invoke-AVIRestCloudconnectoruserTest { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestCloudconnectoruserTest .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruserTest')]$CloudconnectoruserTest ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $CloudconnectoruserTest.uuid $splat = @{ Method = 'POST' Endpoint = "/api/cloudconnectoruser/${uuid}/test" Body = ConvertTo-JSON $CloudconnectoruserTest -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($CloudconnectoruserTest.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudconnectoruserTest } } } Function Invoke-AVIRestVimgrhostruntimeAccessible { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestVimgrhostruntimeAccessible .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntimeAccessible')]$VimgrhostruntimeAccessible ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VimgrhostruntimeAccessible.uuid $splat = @{ Method = 'POST' Endpoint = "/api/vimgrhostruntime/${uuid}/accessible" Body = ConvertTo-JSON $VimgrhostruntimeAccessible -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrhostruntimeAccessible.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntimeAccessible } } } Function Invoke-AVIRestServiceengineReboot { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineReboot .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineReboot')]$ServiceengineReboot ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineReboot.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/reboot" Body = ConvertTo-JSON $ServiceengineReboot -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineReboot.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineReboot } } } Function Invoke-AVIRestServiceengineForcedelete { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineForcedelete .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineForcedelete')]$ServiceengineForcedelete ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineForcedelete.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/forcedelete" Body = ConvertTo-JSON $ServiceengineForcedelete -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineForcedelete.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineForcedelete } } } Function Invoke-AVIRestServiceengineSwitchover { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineSwitchover .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineSwitchover')]$ServiceengineSwitchover ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineSwitchover.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/switchover" Body = ConvertTo-JSON $ServiceengineSwitchover -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineSwitchover.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineSwitchover } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_mbufClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_mbufClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_mbufClear')]$ServiceengineFaultinjectExhaust_mbufClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_mbufClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_mbuf/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_mbufClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_mbufClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_mbufClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_mclClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_mclClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_mclClear')]$ServiceengineFaultinjectExhaust_mclClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_mclClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_mcl/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_mclClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_mclClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_mclClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_mcl_smallClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_mcl_smallClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_mcl_smallClear')]$ServiceengineFaultinjectExhaust_mcl_smallClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_mcl_smallClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_mcl_small/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_mcl_smallClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_mcl_smallClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_mcl_smallClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_connClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_connClear')]$ServiceengineFaultinjectExhaust_connClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_connClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_conn/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_connClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_connClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_connClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_shm_connClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_shm_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_shm_connClear')]$ServiceengineFaultinjectExhaust_shm_connClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_shm_connClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_shm_conn/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_shm_connClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_shm_connClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_shm_connClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_cfgClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_cfgClear')]$ServiceengineFaultinjectExhaust_cfgClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_cfgClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_cfg/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_cfgClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_cfgClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_cfgClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_shm_cfgClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_shm_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_shm_cfgClear')]$ServiceengineFaultinjectExhaust_shm_cfgClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_shm_cfgClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_shm_cfg/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_shm_cfgClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_shm_cfgClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_shm_cfgClear } } } Function Invoke-AVIRestServiceengineFaultinjectSefaultClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectSefaultClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectSefaultClear')]$ServiceengineFaultinjectSefaultClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectSefaultClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/sefault/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectSefaultClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectSefaultClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectSefaultClear } } } Function Invoke-AVIRestPoolScaleout { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestPoolScaleout .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolScaleout')]$PoolScaleout ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolScaleout.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/scaleout" Body = ConvertTo-JSON $PoolScaleout -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolScaleout.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolScaleout } } } Function Invoke-AVIRestPoolScalein { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestPoolScalein .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolScalein')]$PoolScalein ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolScalein.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/scalein" Body = ConvertTo-JSON $PoolScalein -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolScalein.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolScalein } } } Function Invoke-AVIRestPoolRuntimeStatsClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestPoolRuntimeStatsClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolRuntimeStatsClear')]$PoolRuntimeStatsClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolRuntimeStatsClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/runtime/stats/clear" Body = ConvertTo-JSON $PoolRuntimeStatsClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolRuntimeStatsClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolRuntimeStatsClear } } } Function Invoke-AVIRestPoolRuntimeRequest_queueClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestPoolRuntimeRequest_queueClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolRuntimeRequest_queueClear')]$PoolRuntimeRequest_queueClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolRuntimeRequest_queueClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/runtime/request_queue/clear" Body = ConvertTo-JSON $PoolRuntimeRequest_queueClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolRuntimeRequest_queueClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolRuntimeRequest_queueClear } } } Function Invoke-AVIRestPoolConnpoolstatsClear { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestPoolConnpoolstatsClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolConnpoolstatsClear')]$PoolConnpoolstatsClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolConnpoolstatsClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/connpoolstats/clear" Body = ConvertTo-JSON $PoolConnpoolstatsClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolConnpoolstatsClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolConnpoolstatsClear } } } Function Invoke-AVIRestSnmptrapprofileTestsnmptrap { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestSnmptrapprofileTestsnmptrap .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofileTestsnmptrap')]$SnmptrapprofileTestsnmptrap ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $SnmptrapprofileTestsnmptrap.uuid $splat = @{ Method = 'POST' Endpoint = "/api/snmptrapprofile/${uuid}/testsnmptrap" Body = ConvertTo-JSON $SnmptrapprofileTestsnmptrap -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($SnmptrapprofileTestsnmptrap.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSnmptrapprofileTestsnmptrap } } } Function Invoke-AVIRestAlertsyslogconfigTestsyslog { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestAlertsyslogconfigTestsyslog .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfigTestsyslog')]$AlertsyslogconfigTestsyslog ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $AlertsyslogconfigTestsyslog.uuid $splat = @{ Method = 'POST' Endpoint = "/api/alertsyslogconfig/${uuid}/testsyslog" Body = ConvertTo-JSON $AlertsyslogconfigTestsyslog -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($AlertsyslogconfigTestsyslog.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertsyslogconfigTestsyslog } } } Function Invoke-AVIRestAlertemailconfigTestemail { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Invoke-AviRestAlertemailconfigTestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfigTestemail')]$AlertemailconfigTestemail ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $AlertemailconfigTestemail.uuid $splat = @{ Method = 'POST' Endpoint = "/api/alertemailconfig/${uuid}/testemail" Body = ConvertTo-JSON $AlertemailconfigTestemail -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($AlertemailconfigTestemail.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAlertemailconfigTestemail } } } Function New-AVIRestPoolgroupEnable_primary_poolClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolgroupEnable_primary_poolClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroupEnable_primary_poolClear') $result } } Function New-AVIRestSslkeyandcertificateRenewObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestSslkeyandcertificateRenew .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSslkeyandcertificateRenew') $result } } Function New-AVIRestCloudconnectoruserTestObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestCloudconnectoruserTest .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudconnectoruserTest') $result } } Function New-AVIRestServiceengineRebootObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineReboot .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineReboot') $result } } Function New-AVIRestServiceengineSwitchoverObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineSwitchover .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineSwitchover') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_mbufClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_mbufClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_mbufClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_mclClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_mclClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_mclClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_mcl_smallClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_mcl_smallClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_mcl_smallClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_connClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_connClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_shm_connClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_shm_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_shm_connClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_cfgClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_cfgClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_shm_cfgClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_shm_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_shm_cfgClear') $result } } Function New-AVIRestServiceengineFaultinjectSefaultClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestServiceengineFaultinjectSefaultClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectSefaultClear') $result } } Function New-AVIRestPoolScaleoutObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolScaleout .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolScaleout') $result } } Function New-AVIRestPoolScaleinObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolScalein .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolScalein') $result } } Function New-AVIRestPoolRuntimeStatsClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolRuntimeStatsClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolRuntimeStatsClear') $result } } Function New-AVIRestPoolRuntimeRequest_queueClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolRuntimeRequest_queueClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolRuntimeRequest_queueClear') $result } } Function New-AVIRestPoolConnpoolstatsClearObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestPoolConnpoolstatsClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolConnpoolstatsClear') $result } } Function New-AVIRestAlertsyslogconfigTestsyslogObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertsyslogconfigTestsyslog .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "text": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "text": "", "uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertsyslogconfigTestsyslog') $result } } Function New-AVIRestAlertemailconfigTestemailObject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE New-AviRestAlertemailconfigTestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAlertemailconfigTestemail') $result } } Function Remove-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNetworksecuritypolicy | Remove-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networksecuritypolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networksecuritypolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworksecuritypolicy')]$Networksecuritypolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networksecuritypolicy') { $uuid = $Networksecuritypolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networksecuritypolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networksecuritypolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestFileobject { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestFileobject | Remove-AviRestFileobject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Fileobject')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Fileobject', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFileobject')]$Fileobject, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Fileobject') { $uuid = $Fileobject.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/fileobject/${uuid}" } if ($pscmdlet.ShouldProcess("$($Fileobject.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestRole { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestRole | Remove-AviRestRole .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Role')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Role', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestRole')]$Role, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Role') { $uuid = $Role.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/role/${uuid}" } if ($pscmdlet.ShouldProcess("$($Role.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestTenant { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestTenant | Remove-AviRestTenant .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Tenant')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Tenant', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenant')]$Tenant, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Tenant') { $uuid = $Tenant.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/tenant/${uuid}" } if ($pscmdlet.ShouldProcess("$($Tenant.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestUseractivity { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestUseractivity | Remove-AviRestUseractivity .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Useractivity')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Useractivity', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseractivity')]$Useractivity, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Useractivity') { $uuid = $Useractivity.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/useractivity/${uuid}" } if ($pscmdlet.ShouldProcess("$($Useractivity.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestUseraccountprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestUseraccountprofile | Remove-AviRestUseraccountprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Useraccountprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Useraccountprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseraccountprofile')]$Useraccountprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Useraccountprofile') { $uuid = $Useraccountprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/useraccountprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Useraccountprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestClusterclouddetails { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestClusterclouddetails | Remove-AviRestClusterclouddetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Clusterclouddetails')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Clusterclouddetails', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestClusterclouddetails')]$Clusterclouddetails, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Clusterclouddetails') { $uuid = $Clusterclouddetails.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/clusterclouddetails/${uuid}" } if ($pscmdlet.ShouldProcess("$($Clusterclouddetails.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestApplicationprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestApplicationprofile | Remove-AviRestApplicationprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Applicationprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Applicationprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationprofile')]$Applicationprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Applicationprofile') { $uuid = $Applicationprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/applicationprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Applicationprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPoolgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPoolgroup | Remove-AviRestPoolgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Poolgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Poolgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroup')]$Poolgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Poolgroup') { $uuid = $Poolgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/poolgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Poolgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSslprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSslprofile | Remove-AviRestSslprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Sslprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Sslprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslprofile')]$Sslprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Sslprofile') { $uuid = $Sslprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/sslprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Sslprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSslkeyandcertificate { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSslkeyandcertificate | Remove-AviRestSslkeyandcertificate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Sslkeyandcertificate')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Sslkeyandcertificate', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificate')]$Sslkeyandcertificate, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Sslkeyandcertificate') { $uuid = $Sslkeyandcertificate.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/sslkeyandcertificate/${uuid}" } if ($pscmdlet.ShouldProcess("$($Sslkeyandcertificate.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPkiprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPkiprofile | Remove-AviRestPkiprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Pkiprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Pkiprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPkiprofile')]$Pkiprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Pkiprofile') { $uuid = $Pkiprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pkiprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Pkiprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCertificatemanagementprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCertificatemanagementprofile | Remove-AviRestCertificatemanagementprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Certificatemanagementprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Certificatemanagementprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCertificatemanagementprofile')]$Certificatemanagementprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Certificatemanagementprofile') { $uuid = $Certificatemanagementprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/certificatemanagementprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Certificatemanagementprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVrfcontext { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVrfcontext | Remove-AviRestVrfcontext .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vrfcontext')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vrfcontext', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVrfcontext')]$Vrfcontext, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vrfcontext') { $uuid = $Vrfcontext.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vrfcontext/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vrfcontext.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWebapput { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWebapput | Remove-AviRestWebapput .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Webapput')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Webapput', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebapput')]$Webapput, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Webapput') { $uuid = $Webapput.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/webapput/${uuid}" } if ($pscmdlet.ShouldProcess("$($Webapput.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestIcapprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestIcapprofile | Remove-AviRestIcapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Icapprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Icapprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIcapprofile')]$Icapprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Icapprofile') { $uuid = $Icapprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/icapprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Icapprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestLabelgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestLabelgroup | Remove-AviRestLabelgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Labelgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Labelgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLabelgroup')]$Labelgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Labelgroup') { $uuid = $Labelgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/labelgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Labelgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestTrafficcloneprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestTrafficcloneprofile | Remove-AviRestTrafficcloneprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Trafficcloneprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Trafficcloneprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTrafficcloneprofile')]$Trafficcloneprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Trafficcloneprofile') { $uuid = $Trafficcloneprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/trafficcloneprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Trafficcloneprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestGeodb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestGeodb | Remove-AviRestGeodb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Geodb')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Geodb', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGeodb')]$Geodb, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Geodb') { $uuid = $Geodb.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/geodb/${uuid}" } if ($pscmdlet.ShouldProcess("$($Geodb.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestJobs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestJobs | Remove-AviRestJobs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Jobs')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Jobs', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJobs')]$Jobs, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Jobs') { $uuid = $Jobs.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/jobs/${uuid}" } if ($pscmdlet.ShouldProcess("$($Jobs.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestTestsedatastorelevel1 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestTestsedatastorelevel1 | Remove-AviRestTestsedatastorelevel1 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Testsedatastorelevel1')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Testsedatastorelevel1', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel1')]$Testsedatastorelevel1, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Testsedatastorelevel1') { $uuid = $Testsedatastorelevel1.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/testsedatastorelevel1/${uuid}" } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel1.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestTestsedatastorelevel2 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestTestsedatastorelevel2 | Remove-AviRestTestsedatastorelevel2 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Testsedatastorelevel2')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Testsedatastorelevel2', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel2')]$Testsedatastorelevel2, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Testsedatastorelevel2') { $uuid = $Testsedatastorelevel2.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/testsedatastorelevel2/${uuid}" } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel2.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestTestsedatastorelevel3 { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestTestsedatastorelevel3 | Remove-AviRestTestsedatastorelevel3 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Testsedatastorelevel3')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Testsedatastorelevel3', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel3')]$Testsedatastorelevel3, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Testsedatastorelevel3') { $uuid = $Testsedatastorelevel3.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/testsedatastorelevel3/${uuid}" } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel3.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAnalyticsprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAnalyticsprofile | Remove-AviRestAnalyticsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Analyticsprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Analyticsprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAnalyticsprofile')]$Analyticsprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Analyticsprofile') { $uuid = $Analyticsprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/analyticsprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Analyticsprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlbservicesfileupload { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlbservicesfileupload | Remove-AviRestAlbservicesfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Albservicesfileupload')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Albservicesfileupload', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesfileupload')]$Albservicesfileupload, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Albservicesfileupload') { $uuid = $Albservicesfileupload.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/albservicesfileupload/${uuid}" } if ($pscmdlet.ShouldProcess("$($Albservicesfileupload.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSecurechannelmapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSecurechannelmapping | Remove-AviRestSecurechannelmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securechannelmapping')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securechannelmapping', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelmapping')]$Securechannelmapping, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securechannelmapping') { $uuid = $Securechannelmapping.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securechannelmapping/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securechannelmapping.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSecurechannelavailablelocalips { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSecurechannelavailablelocalips | Remove-AviRestSecurechannelavailablelocalips .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securechannelavailablelocalips')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securechannelavailablelocalips', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelavailablelocalips')]$Securechannelavailablelocalips, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securechannelavailablelocalips') { $uuid = $Securechannelavailablelocalips.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securechannelavailablelocalips/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securechannelavailablelocalips.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSecurechanneltoken { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSecurechanneltoken | Remove-AviRestSecurechanneltoken .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securechanneltoken')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securechanneltoken', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechanneltoken')]$Securechanneltoken, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securechanneltoken') { $uuid = $Securechanneltoken.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securechanneltoken/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securechanneltoken.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestMicroservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestMicroservice | Remove-AviRestMicroservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Microservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Microservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservice')]$Microservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Microservice') { $uuid = $Microservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/microservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Microservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCustomipamdnsprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCustomipamdnsprofile | Remove-AviRestCustomipamdnsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Customipamdnsprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Customipamdnsprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomipamdnsprofile')]$Customipamdnsprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Customipamdnsprofile') { $uuid = $Customipamdnsprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/customipamdnsprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Customipamdnsprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestJwtserverprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestJwtserverprofile | Remove-AviRestJwtserverprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Jwtserverprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Jwtserverprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtserverprofile')]$Jwtserverprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Jwtserverprofile') { $uuid = $Jwtserverprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/jwtserverprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Jwtserverprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAuthprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAuthprofile | Remove-AviRestAuthprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Authprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Authprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthprofile')]$Authprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Authprofile') { $uuid = $Authprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/authprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Authprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAuthmappingprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAuthmappingprofile | Remove-AviRestAuthmappingprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Authmappingprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Authmappingprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAuthmappingprofile')]$Authmappingprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Authmappingprofile') { $uuid = $Authmappingprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/authmappingprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Authmappingprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWafpolicypsmgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWafpolicypsmgroup | Remove-AviRestWafpolicypsmgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafpolicypsmgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafpolicypsmgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroup')]$Wafpolicypsmgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafpolicypsmgroup') { $uuid = $Wafpolicypsmgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafpolicypsmgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafpolicypsmgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestBotdetectionpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestBotdetectionpolicy | Remove-AviRestBotdetectionpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botdetectionpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botdetectionpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotdetectionpolicy')]$Botdetectionpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botdetectionpolicy') { $uuid = $Botdetectionpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botdetectionpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botdetectionpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestBotmapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestBotmapping | Remove-AviRestBotmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botmapping')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botmapping', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotmapping')]$Botmapping, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botmapping') { $uuid = $Botmapping.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botmapping/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botmapping.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestBotconfigconsolidator { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestBotconfigconsolidator | Remove-AviRestBotconfigconsolidator .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botconfigconsolidator')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botconfigconsolidator', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotconfigconsolidator')]$Botconfigconsolidator, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botconfigconsolidator') { $uuid = $Botconfigconsolidator.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botconfigconsolidator/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botconfigconsolidator.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestBotipreputationtypemapping { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestBotipreputationtypemapping | Remove-AviRestBotipreputationtypemapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botipreputationtypemapping')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botipreputationtypemapping', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotipreputationtypemapping')]$Botipreputationtypemapping, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botipreputationtypemapping') { $uuid = $Botipreputationtypemapping.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botipreputationtypemapping/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botipreputationtypemapping.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestDynamicdnsrecord { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestDynamicdnsrecord | Remove-AviRestDynamicdnsrecord .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Dynamicdnsrecord')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Dynamicdnsrecord', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDynamicdnsrecord')]$Dynamicdnsrecord, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Dynamicdnsrecord') { $uuid = $Dynamicdnsrecord.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/dynamicdnsrecord/${uuid}" } if ($pscmdlet.ShouldProcess("$($Dynamicdnsrecord.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVsgs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVsgs | Remove-AviRestVsgs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vsgs')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vsgs', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsgs')]$Vsgs, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vsgs') { $uuid = $Vsgs.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsgs/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vsgs.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestServerautoscalepolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestServerautoscalepolicy | Remove-AviRestServerautoscalepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serverautoscalepolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serverautoscalepolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServerautoscalepolicy')]$Serverautoscalepolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serverautoscalepolicy') { $uuid = $Serverautoscalepolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serverautoscalepolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serverautoscalepolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAutoscalelaunchconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAutoscalelaunchconfig | Remove-AviRestAutoscalelaunchconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Autoscalelaunchconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Autoscalelaunchconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAutoscalelaunchconfig')]$Autoscalelaunchconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Autoscalelaunchconfig') { $uuid = $Autoscalelaunchconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/autoscalelaunchconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Autoscalelaunchconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestControllerproperties | Remove-AviRestControllerproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Controllerproperties')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Controllerproperties', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerproperties')]$Controllerproperties, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Controllerproperties') { $uuid = $Controllerproperties.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/controllerproperties/${uuid}" } if ($pscmdlet.ShouldProcess("$($Controllerproperties.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNetworkservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNetworkservice | Remove-AviRestNetworkservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networkservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networkservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkservice')]$Networkservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networkservice') { $uuid = $Networkservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networkservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networkservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestLicensingStatus { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestLicensingStatus | Remove-AviRestLicensingStatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'LicensingStatus')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'LicensingStatus', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingStatus')]$LicensingStatus, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'LicensingStatus') { $uuid = $LicensingStatus.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/licensing/status/${uuid}" } if ($pscmdlet.ShouldProcess("$($LicensingStatus.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlbservicesconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlbservicesconfig | Remove-AviRestAlbservicesconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Albservicesconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Albservicesconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesconfig')]$Albservicesconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Albservicesconfig') { $uuid = $Albservicesconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/albservicesconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Albservicesconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPoolInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPoolInventory | Remove-AviRestPoolInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'PoolInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'PoolInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolInventory')]$PoolInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'PoolInventory') { $uuid = $PoolInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pool-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($PoolInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPoolgroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPoolgroupInventory | Remove-AviRestPoolgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'PoolgroupInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'PoolgroupInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupInventory')]$PoolgroupInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'PoolgroupInventory') { $uuid = $PoolgroupInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/poolgroup-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($PoolgroupInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVsvipInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVsvipInventory | Remove-AviRestVsvipInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'VsvipInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'VsvipInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvipInventory')]$VsvipInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'VsvipInventory') { $uuid = $VsvipInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsvip-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($VsvipInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVirtualserviceInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVirtualserviceInventory | Remove-AviRestVirtualserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'VirtualserviceInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'VirtualserviceInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceInventory')]$VirtualserviceInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'VirtualserviceInventory') { $uuid = $VirtualserviceInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/virtualservice-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($VirtualserviceInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestServiceengineInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestServiceengineInventory | Remove-AviRestServiceengineInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'ServiceengineInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'ServiceengineInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineInventory')]$ServiceengineInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'ServiceengineInventory') { $uuid = $ServiceengineInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceengine-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($ServiceengineInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestServiceenginegroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestServiceenginegroupInventory | Remove-AviRestServiceenginegroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'ServiceenginegroupInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'ServiceenginegroupInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupInventory')]$ServiceenginegroupInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'ServiceenginegroupInventory') { $uuid = $ServiceenginegroupInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceenginegroup-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestUpgradestatussummary { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestUpgradestatussummary | Remove-AviRestUpgradestatussummary .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Upgradestatussummary')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Upgradestatussummary', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatussummary')]$Upgradestatussummary, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Upgradestatussummary') { $uuid = $Upgradestatussummary.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/upgradestatussummary/${uuid}" } if ($pscmdlet.ShouldProcess("$($Upgradestatussummary.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestServiceenginegroup | Remove-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serviceenginegroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serviceenginegroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serviceenginegroup') { $uuid = $Serviceenginegroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceenginegroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNetworkInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNetworkInventory | Remove-AviRestNetworkInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'NetworkInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'NetworkInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkInventory')]$NetworkInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'NetworkInventory') { $uuid = $NetworkInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/network-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($NetworkInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNetworkruntime | Remove-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networkruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networkruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networkruntime') { $uuid = $Networkruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networkruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVimgrnwruntime | Remove-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrnwruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrnwruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrnwruntime') { $uuid = $Vimgrnwruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrnwruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCloudInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCloudInventory | Remove-AviRestCloudInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'CloudInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'CloudInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudInventory')]$CloudInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'CloudInventory') { $uuid = $CloudInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloud-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($CloudInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestGslbInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestGslbInventory | Remove-AviRestGslbInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'GslbInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'GslbInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbInventory')]$GslbInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'GslbInventory') { $uuid = $GslbInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslb-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($GslbInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestGslbserviceInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestGslbserviceInventory | Remove-AviRestGslbserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'GslbserviceInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'GslbserviceInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbserviceInventory')]$GslbserviceInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'GslbserviceInventory') { $uuid = $GslbserviceInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslbservice-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($GslbserviceInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWafpolicypsmgroupInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWafpolicypsmgroupInventory | Remove-AviRestWafpolicypsmgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'WafpolicypsmgroupInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'WafpolicypsmgroupInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroupInventory')]$WafpolicypsmgroupInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'WafpolicypsmgroupInventory') { $uuid = $WafpolicypsmgroupInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafpolicypsmgroup-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($WafpolicypsmgroupInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestFederationcheckpointInventory { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestFederationcheckpointInventory | Remove-AviRestFederationcheckpointInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'FederationcheckpointInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'FederationcheckpointInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpointInventory')]$FederationcheckpointInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'FederationcheckpointInventory') { $uuid = $FederationcheckpointInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/federationcheckpoint-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($FederationcheckpointInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestFederationcheckpoint | Remove-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Federationcheckpoint')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Federationcheckpoint', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Federationcheckpoint') { $uuid = $Federationcheckpoint.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/federationcheckpoint/${uuid}" } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestIpreputationdb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestIpreputationdb | Remove-AviRestIpreputationdb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ipreputationdb')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ipreputationdb', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpreputationdb')]$Ipreputationdb, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ipreputationdb') { $uuid = $Ipreputationdb.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ipreputationdb/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ipreputationdb.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNetwork { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNetwork | Remove-AviRestNetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Network')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Network', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetwork')]$Network, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Network') { $uuid = $Network.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/network/${uuid}" } if ($pscmdlet.ShouldProcess("$($Network.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestIpaddrgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestIpaddrgroup | Remove-AviRestIpaddrgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ipaddrgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ipaddrgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpaddrgroup')]$Ipaddrgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ipaddrgroup') { $uuid = $Ipaddrgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ipaddrgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ipaddrgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestStringgroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestStringgroup | Remove-AviRestStringgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Stringgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Stringgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStringgroup')]$Stringgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Stringgroup') { $uuid = $Stringgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/stringgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Stringgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestMicroservicegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestMicroservicegroup | Remove-AviRestMicroservicegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Microservicegroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Microservicegroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservicegroup')]$Microservicegroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Microservicegroup') { $uuid = $Microservicegroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/microservicegroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Microservicegroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWafcrs { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWafcrs | Remove-AviRestWafcrs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafcrs')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafcrs', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafcrs')]$Wafcrs, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafcrs') { $uuid = $Wafcrs.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafcrs/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafcrs.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSystemconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSystemconfiguration | Remove-AviRestSystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Systemconfiguration')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Systemconfiguration', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemconfiguration')]$Systemconfiguration, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Systemconfiguration') { $uuid = $Systemconfiguration.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/systemconfiguration/${uuid}" } if ($pscmdlet.ShouldProcess("$($Systemconfiguration.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestControllersite { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestControllersite | Remove-AviRestControllersite .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Controllersite')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Controllersite', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllersite')]$Controllersite, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Controllersite') { $uuid = $Controllersite.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/controllersite/${uuid}" } if ($pscmdlet.ShouldProcess("$($Controllersite.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCloudconnectoruser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCloudconnectoruser | Remove-AviRestCloudconnectoruser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloudconnectoruser')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloudconnectoruser', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruser')]$Cloudconnectoruser, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloudconnectoruser') { $uuid = $Cloudconnectoruser.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloudconnectoruser/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloudconnectoruser.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSeproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSeproperties | Remove-AviRestSeproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Seproperties')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Seproperties', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSeproperties')]$Seproperties, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Seproperties') { $uuid = $Seproperties.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/seproperties/${uuid}" } if ($pscmdlet.ShouldProcess("$($Seproperties.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCsrfpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCsrfpolicy | Remove-AviRestCsrfpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Csrfpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Csrfpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCsrfpolicy')]$Csrfpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Csrfpolicy') { $uuid = $Csrfpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/csrfpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Csrfpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestMemorybalancernotifier { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestMemorybalancernotifier | Remove-AviRestMemorybalancernotifier .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Memorybalancernotifier')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Memorybalancernotifier', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMemorybalancernotifier')]$Memorybalancernotifier, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Memorybalancernotifier') { $uuid = $Memorybalancernotifier.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/memorybalancernotifier/${uuid}" } if ($pscmdlet.ShouldProcess("$($Memorybalancernotifier.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVcenterserver { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVcenterserver | Remove-AviRestVcenterserver .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vcenterserver')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vcenterserver', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVcenterserver')]$Vcenterserver, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vcenterserver') { $uuid = $Vcenterserver.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vcenterserver/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vcenterserver.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAvailabilityzone { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAvailabilityzone | Remove-AviRestAvailabilityzone .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Availabilityzone')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Availabilityzone', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAvailabilityzone')]$Availabilityzone, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Availabilityzone') { $uuid = $Availabilityzone.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/availabilityzone/${uuid}" } if ($pscmdlet.ShouldProcess("$($Availabilityzone.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNsxtsegmentruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNsxtsegmentruntime | Remove-AviRestNsxtsegmentruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Nsxtsegmentruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Nsxtsegmentruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNsxtsegmentruntime')]$Nsxtsegmentruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Nsxtsegmentruntime') { $uuid = $Nsxtsegmentruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/nsxtsegmentruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Nsxtsegmentruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestStatediffoperation | Remove-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Statediffoperation')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Statediffoperation', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Statediffoperation') { $uuid = $Statediffoperation.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/statediffoperation/${uuid}" } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestApplicationpersistenceprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestApplicationpersistenceprofile | Remove-AviRestApplicationpersistenceprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Applicationpersistenceprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Applicationpersistenceprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplicationpersistenceprofile')]$Applicationpersistenceprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Applicationpersistenceprofile') { $uuid = $Applicationpersistenceprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/applicationpersistenceprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Applicationpersistenceprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestScvsstateinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestScvsstateinfo | Remove-AviRestScvsstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Scvsstateinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Scvsstateinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScvsstateinfo')]$Scvsstateinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Scvsstateinfo') { $uuid = $Scvsstateinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/scvsstateinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Scvsstateinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestScpoolserverstateinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestScpoolserverstateinfo | Remove-AviRestScpoolserverstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Scpoolserverstateinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Scpoolserverstateinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScpoolserverstateinfo')]$Scpoolserverstateinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Scpoolserverstateinfo') { $uuid = $Scpoolserverstateinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/scpoolserverstateinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Scpoolserverstateinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlbservicesjob { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlbservicesjob | Remove-AviRestAlbservicesjob .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Albservicesjob')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Albservicesjob', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlbservicesjob')]$Albservicesjob, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Albservicesjob') { $uuid = $Albservicesjob.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/albservicesjob/${uuid}" } if ($pscmdlet.ShouldProcess("$($Albservicesjob.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestImage { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestImage | Remove-AviRestImage .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Image')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Image', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestImage')]$Image, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Image') { $uuid = $Image.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/image/${uuid}" } if ($pscmdlet.ShouldProcess("$($Image.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCloud { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCloud | Remove-AviRestCloud .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloud')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloud', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloud')]$Cloud, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloud') { $uuid = $Cloud.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloud/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloud.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCloudruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCloudruntime | Remove-AviRestCloudruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloudruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloudruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudruntime')]$Cloudruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloudruntime') { $uuid = $Cloudruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloudruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloudruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestL4policyset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestL4policyset | Remove-AviRestL4policyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'L4policyset')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'L4policyset', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestL4policyset')]$L4policyset, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'L4policyset') { $uuid = $L4policyset.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/l4policyset/${uuid}" } if ($pscmdlet.ShouldProcess("$($L4policyset.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestHealthmonitor { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestHealthmonitor | Remove-AviRestHealthmonitor .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Healthmonitor')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Healthmonitor', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHealthmonitor')]$Healthmonitor, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Healthmonitor') { $uuid = $Healthmonitor.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/healthmonitor/${uuid}" } if ($pscmdlet.ShouldProcess("$($Healthmonitor.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestUpgradestatusinfo | Remove-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Upgradestatusinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Upgradestatusinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Upgradestatusinfo') { $uuid = $Upgradestatusinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/upgradestatusinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestCloudproperties { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestCloudproperties | Remove-AviRestCloudproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloudproperties')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloudproperties', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudproperties')]$Cloudproperties, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloudproperties') { $uuid = $Cloudproperties.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloudproperties/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloudproperties.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVsdatascriptset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVsdatascriptset | Remove-AviRestVsdatascriptset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vsdatascriptset')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vsdatascriptset', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsdatascriptset')]$Vsdatascriptset, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vsdatascriptset') { $uuid = $Vsdatascriptset.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsdatascriptset/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vsdatascriptset.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestControllerportalregistration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestControllerportalregistration | Remove-AviRestControllerportalregistration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Controllerportalregistration')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Controllerportalregistration', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerportalregistration')]$Controllerportalregistration, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Controllerportalregistration') { $uuid = $Controllerportalregistration.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/controllerportalregistration/${uuid}" } if ($pscmdlet.ShouldProcess("$($Controllerportalregistration.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestUser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestUser | Remove-AviRestUser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'User')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'User', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUser')]$User, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'User') { $uuid = $User.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/user/${uuid}" } if ($pscmdlet.ShouldProcess("$($User.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNetworkprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNetworkprofile | Remove-AviRestNetworkprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networkprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networkprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkprofile')]$Networkprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networkprofile') { $uuid = $Networkprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networkprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networkprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestDnspolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestDnspolicy | Remove-AviRestDnspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Dnspolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Dnspolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDnspolicy')]$Dnspolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Dnspolicy') { $uuid = $Dnspolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/dnspolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Dnspolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestHardwaresecuritymodulegroup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestHardwaresecuritymodulegroup | Remove-AviRestHardwaresecuritymodulegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Hardwaresecuritymodulegroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Hardwaresecuritymodulegroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHardwaresecuritymodulegroup')]$Hardwaresecuritymodulegroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Hardwaresecuritymodulegroup') { $uuid = $Hardwaresecuritymodulegroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/hardwaresecuritymodulegroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Hardwaresecuritymodulegroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestLogcontroller { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestLogcontroller | Remove-AviRestLogcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Logcontroller')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Logcontroller', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLogcontroller')]$Logcontroller, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Logcontroller') { $uuid = $Logcontroller.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/logcontroller/${uuid}" } if ($pscmdlet.ShouldProcess("$($Logcontroller.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestProtocolparser { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestProtocolparser | Remove-AviRestProtocolparser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Protocolparser')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Protocolparser', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestProtocolparser')]$Protocolparser, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Protocolparser') { $uuid = $Protocolparser.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/protocolparser/${uuid}" } if ($pscmdlet.ShouldProcess("$($Protocolparser.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestScheduler { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestScheduler | Remove-AviRestScheduler .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Scheduler')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Scheduler', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScheduler')]$Scheduler, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Scheduler') { $uuid = $Scheduler.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/scheduler/${uuid}" } if ($pscmdlet.ShouldProcess("$($Scheduler.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestBackupconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestBackupconfiguration | Remove-AviRestBackupconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Backupconfiguration')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Backupconfiguration', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackupconfiguration')]$Backupconfiguration, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Backupconfiguration') { $uuid = $Backupconfiguration.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/backupconfiguration/${uuid}" } if ($pscmdlet.ShouldProcess("$($Backupconfiguration.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrsevmruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVimgrsevmruntime | Remove-AviRestVimgrsevmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrsevmruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrsevmruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrsevmruntime')]$Vimgrsevmruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrsevmruntime') { $uuid = $Vimgrsevmruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrsevmruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrsevmruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrvmruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVimgrvmruntime | Remove-AviRestVimgrvmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrvmruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrvmruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvmruntime')]$Vimgrvmruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrvmruntime') { $uuid = $Vimgrvmruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrvmruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrvmruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrhostruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVimgrhostruntime | Remove-AviRestVimgrhostruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrhostruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrhostruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntime')]$Vimgrhostruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrhostruntime') { $uuid = $Vimgrhostruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrhostruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrhostruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrclusterruntime { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVimgrclusterruntime | Remove-AviRestVimgrclusterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrclusterruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrclusterruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrclusterruntime')]$Vimgrclusterruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrclusterruntime') { $uuid = $Vimgrclusterruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrclusterruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrclusterruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrvcenterdatacenters { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVimgrvcenterdatacenters | Remove-AviRestVimgrvcenterdatacenters .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrvcenterdatacenters')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrvcenterdatacenters', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterdatacenters')]$Vimgrvcenterdatacenters, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrvcenterdatacenters') { $uuid = $Vimgrvcenterdatacenters.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrvcenterdatacenters/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterdatacenters.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrvcenternetworks { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVimgrvcenternetworks | Remove-AviRestVimgrvcenternetworks .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrvcenternetworks')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrvcenternetworks', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenternetworks')]$Vimgrvcenternetworks, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrvcenternetworks') { $uuid = $Vimgrvcenternetworks.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrvcenternetworks/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrvcenternetworks.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestServiceengine { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestServiceengine | Remove-AviRestServiceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serviceengine')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serviceengine', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengine')]$Serviceengine, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serviceengine') { $uuid = $Serviceengine.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceengine/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serviceengine.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWafpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWafpolicy | Remove-AviRestWafpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicy')]$Wafpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafpolicy') { $uuid = $Wafpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWafapplicationsignatureprovider { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWafapplicationsignatureprovider | Remove-AviRestWafapplicationsignatureprovider .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafapplicationsignatureprovider')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafapplicationsignatureprovider', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafapplicationsignatureprovider')]$Wafapplicationsignatureprovider, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafapplicationsignatureprovider') { $uuid = $Wafapplicationsignatureprovider.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafapplicationsignatureprovider/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafapplicationsignatureprovider.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSsopolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSsopolicy | Remove-AviRestSsopolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ssopolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ssopolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSsopolicy')]$Ssopolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ssopolicy') { $uuid = $Ssopolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ssopolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ssopolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNatpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestNatpolicy | Remove-AviRestNatpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Natpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Natpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNatpolicy')]$Natpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Natpolicy') { $uuid = $Natpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/natpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Natpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSiteversion { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSiteversion | Remove-AviRestSiteversion .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Siteversion')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Siteversion', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSiteversion')]$Siteversion, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Siteversion') { $uuid = $Siteversion.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/siteversion/${uuid}" } if ($pscmdlet.ShouldProcess("$($Siteversion.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWebhook { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWebhook | Remove-AviRestWebhook .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Webhook')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Webhook', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebhook')]$Webhook, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Webhook') { $uuid = $Webhook.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/webhook/${uuid}" } if ($pscmdlet.ShouldProcess("$($Webhook.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPool { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPool | Remove-AviRestPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Pool')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Pool', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPool')]$Pool, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Pool') { $uuid = $Pool.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pool/${uuid}" } if ($pscmdlet.ShouldProcess("$($Pool.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestBackup { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestBackup | Remove-AviRestBackup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Backup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Backup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackup')]$Backup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Backup') { $uuid = $Backup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/backup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Backup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSecuritymanagerdata { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSecuritymanagerdata | Remove-AviRestSecuritymanagerdata .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securitymanagerdata')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securitymanagerdata', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritymanagerdata')]$Securitymanagerdata, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securitymanagerdata') { $uuid = $Securitymanagerdata.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securitymanagerdata/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securitymanagerdata.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVirtualservice | Remove-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Virtualservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Virtualservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Virtualservice') { $uuid = $Virtualservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/virtualservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVsvip { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestVsvip | Remove-AviRestVsvip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vsvip')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vsvip', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvip')]$Vsvip, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vsvip') { $uuid = $Vsvip.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsvip/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vsvip.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestIpamdnsproviderprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestIpamdnsproviderprofile | Remove-AviRestIpamdnsproviderprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ipamdnsproviderprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ipamdnsproviderprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpamdnsproviderprofile')]$Ipamdnsproviderprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ipamdnsproviderprofile') { $uuid = $Ipamdnsproviderprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ipamdnsproviderprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ipamdnsproviderprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestWafprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestWafprofile | Remove-AviRestWafprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafprofile')]$Wafprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafprofile') { $uuid = $Wafprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestLicensingLedgerDetails { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestLicensingLedgerDetails | Remove-AviRestLicensingLedgerDetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'LicensingLedgerDetails')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'LicensingLedgerDetails', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingLedgerDetails')]$LicensingLedgerDetails, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'LicensingLedgerDetails') { $uuid = $LicensingLedgerDetails.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/licensing/ledger/details/${uuid}" } if ($pscmdlet.ShouldProcess("$($LicensingLedgerDetails.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPingaccessagent { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPingaccessagent | Remove-AviRestPingaccessagent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Pingaccessagent')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Pingaccessagent', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPingaccessagent')]$Pingaccessagent, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Pingaccessagent') { $uuid = $Pingaccessagent.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pingaccessagent/${uuid}" } if ($pscmdlet.ShouldProcess("$($Pingaccessagent.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestApplication { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestApplication | Remove-AviRestApplication .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Application')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Application', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestApplication')]$Application, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Application') { $uuid = $Application.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/application/${uuid}" } if ($pscmdlet.ShouldProcess("$($Application.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestDebugserviceengine { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestDebugserviceengine | Remove-AviRestDebugserviceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Debugserviceengine')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Debugserviceengine', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugserviceengine')]$Debugserviceengine, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Debugserviceengine') { $uuid = $Debugserviceengine.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/debugserviceengine/${uuid}" } if ($pscmdlet.ShouldProcess("$($Debugserviceengine.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestDebugvirtualservice | Remove-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Debugvirtualservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Debugvirtualservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Debugvirtualservice') { $uuid = $Debugvirtualservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/debugvirtualservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPoolgroupdeploymentpolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPoolgroupdeploymentpolicy | Remove-AviRestPoolgroupdeploymentpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Poolgroupdeploymentpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Poolgroupdeploymentpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupdeploymentpolicy')]$Poolgroupdeploymentpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Poolgroupdeploymentpolicy') { $uuid = $Poolgroupdeploymentpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/poolgroupdeploymentpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Poolgroupdeploymentpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestHttppolicyset { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestHttppolicyset | Remove-AviRestHttppolicyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Httppolicyset')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Httppolicyset', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHttppolicyset')]$Httppolicyset, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Httppolicyset') { $uuid = $Httppolicyset.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/httppolicyset/${uuid}" } if ($pscmdlet.ShouldProcess("$($Httppolicyset.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSecuritypolicy { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSecuritypolicy | Remove-AviRestSecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securitypolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securitypolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritypolicy')]$Securitypolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securitypolicy') { $uuid = $Securitypolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securitypolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securitypolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSnmptrapprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSnmptrapprofile | Remove-AviRestSnmptrapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Snmptrapprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Snmptrapprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofile')]$Snmptrapprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Snmptrapprofile') { $uuid = $Snmptrapprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/snmptrapprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Snmptrapprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestSystemlimits { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestSystemlimits | Remove-AviRestSystemlimits .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Systemlimits')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Systemlimits', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemlimits')]$Systemlimits, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Systemlimits') { $uuid = $Systemlimits.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/systemlimits/${uuid}" } if ($pscmdlet.ShouldProcess("$($Systemlimits.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestPrioritylabels { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestPrioritylabels | Remove-AviRestPrioritylabels .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Prioritylabels')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Prioritylabels', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPrioritylabels')]$Prioritylabels, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Prioritylabels') { $uuid = $Prioritylabels.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/prioritylabels/${uuid}" } if ($pscmdlet.ShouldProcess("$($Prioritylabels.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestGslb { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestGslb | Remove-AviRestGslb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Gslb')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Gslb', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslb')]$Gslb, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Gslb') { $uuid = $Gslb.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslb/${uuid}" } if ($pscmdlet.ShouldProcess("$($Gslb.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestGslbservice { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestGslbservice | Remove-AviRestGslbservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Gslbservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Gslbservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbservice')]$Gslbservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Gslbservice') { $uuid = $Gslbservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslbservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Gslbservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestGslbgeodbprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestGslbgeodbprofile | Remove-AviRestGslbgeodbprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Gslbgeodbprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Gslbgeodbprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbgeodbprofile')]$Gslbgeodbprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Gslbgeodbprofile') { $uuid = $Gslbgeodbprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslbgeodbprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Gslbgeodbprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestDebugcontroller { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestDebugcontroller | Remove-AviRestDebugcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Debugcontroller')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Debugcontroller', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugcontroller')]$Debugcontroller, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Debugcontroller') { $uuid = $Debugcontroller.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/debugcontroller/${uuid}" } if ($pscmdlet.ShouldProcess("$($Debugcontroller.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestErrorpageprofile { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestErrorpageprofile | Remove-AviRestErrorpageprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Errorpageprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Errorpageprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpageprofile')]$Errorpageprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Errorpageprofile') { $uuid = $Errorpageprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/errorpageprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Errorpageprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestErrorpagebody { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestErrorpagebody | Remove-AviRestErrorpagebody .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Errorpagebody')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Errorpagebody', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpagebody')]$Errorpagebody, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Errorpagebody') { $uuid = $Errorpagebody.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/errorpagebody/${uuid}" } if ($pscmdlet.ShouldProcess("$($Errorpagebody.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlertsyslogconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlertsyslogconfig | Remove-AviRestAlertsyslogconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertsyslogconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertsyslogconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertsyslogconfig')]$Alertsyslogconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertsyslogconfig') { $uuid = $Alertsyslogconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertsyslogconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertsyslogconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlertemailconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlertemailconfig | Remove-AviRestAlertemailconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertemailconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertemailconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertemailconfig')]$Alertemailconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertemailconfig') { $uuid = $Alertemailconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertemailconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertemailconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlertscriptconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlertscriptconfig | Remove-AviRestAlertscriptconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertscriptconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertscriptconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertscriptconfig')]$Alertscriptconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertscriptconfig') { $uuid = $Alertscriptconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertscriptconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertscriptconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlertconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlertconfig | Remove-AviRestAlertconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertconfig')]$Alertconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertconfig') { $uuid = $Alertconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestActiongroupconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestActiongroupconfig | Remove-AviRestActiongroupconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Actiongroupconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Actiongroupconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestActiongroupconfig')]$Actiongroupconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Actiongroupconfig') { $uuid = $Actiongroupconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/actiongroupconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Actiongroupconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlertobjectlist { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlertobjectlist | Remove-AviRestAlertobjectlist .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alertobjectlist')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alertobjectlist', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlertobjectlist')]$Alertobjectlist, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alertobjectlist') { $uuid = $Alertobjectlist.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alertobjectlist/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alertobjectlist.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestAlert { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestAlert | Remove-AviRestAlert .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Alert')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Alert', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAlert')]$Alert, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Alert') { $uuid = $Alert.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/alert/${uuid}" } if ($pscmdlet.ShouldProcess("$($Alert.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestInventoryfaultconfig { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestInventoryfaultconfig | Remove-AviRestInventoryfaultconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Inventoryfaultconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Inventoryfaultconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestInventoryfaultconfig')]$Inventoryfaultconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Inventoryfaultconfig') { $uuid = $Inventoryfaultconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/inventoryfaultconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Inventoryfaultconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestTenantsystemconfiguration { <# .SYNOPSIS Configure Avi avi_global_spec Object API .EXAMPLE Get-AviRestTenantsystemconfiguration | Remove-AviRestTenantsystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Tenantsystemconfiguration')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Tenantsystemconfiguration', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenantsystemconfiguration')]$Tenantsystemconfiguration, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Tenantsystemconfiguration') { $uuid = $Tenantsystemconfiguration.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/tenantsystemconfiguration/${uuid}" } if ($pscmdlet.ShouldProcess("$($Tenantsystemconfiguration.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestBackup { <# .SYNOPSIS Configure Avi Backup Object API .EXAMPLE Get-AviRestBackup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'b', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/backup$Uuid" : '/api/backup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestBackup } } Function Set-AVIRestBackup { <# .SYNOPSIS Configure Avi Backup Object API .EXAMPLE $object = Get-AviRestBackup $object.name = 'New name' Set-AviRestBackup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackup')]$Backup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Backup.uuid $global:body = ConvertTo-JSON $Backup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/backup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Backup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBackup } } } Function New-AVIRestBackup { <# .SYNOPSIS Configure Avi Backup Object API .EXAMPLE New-AviRestBackup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackup')]$Backup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/backup" Body = ConvertTo-JSON $Backup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Backup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBackup } } } Function New-AVIRestBackupObject { <# .SYNOPSIS Configure Avi Backup Object API .EXAMPLE New-AviRestBackup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBackup') $result } } Function Remove-AVIRestBackup { <# .SYNOPSIS Configure Avi Backup Object API .EXAMPLE Get-AviRestBackup | Remove-AviRestBackup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Backup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Backup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackup')]$Backup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Backup') { $uuid = $Backup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/backup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Backup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestBackupconfiguration { <# .SYNOPSIS Configure Avi BackupConfiguration Object API .EXAMPLE Get-AviRestBackupconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'b', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/backupconfiguration$Uuid" : '/api/backupconfiguration' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestBackupconfiguration } } Function Set-AVIRestBackupconfiguration { <# .SYNOPSIS Configure Avi BackupConfiguration Object API .EXAMPLE $object = Get-AviRestBackupconfiguration $object.name = 'New name' Set-AviRestBackupconfiguration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackupconfiguration')]$Backupconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Backupconfiguration.uuid $global:body = ConvertTo-JSON $Backupconfiguration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/backupconfiguration/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Backupconfiguration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBackupconfiguration } } } Function New-AVIRestBackupconfiguration { <# .SYNOPSIS Configure Avi BackupConfiguration Object API .EXAMPLE New-AviRestBackupconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackupconfiguration')]$Backupconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/backupconfiguration" Body = ConvertTo-JSON $Backupconfiguration -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Backupconfiguration.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBackupconfiguration } } } Function New-AVIRestBackupconfigurationObject { <# .SYNOPSIS Configure Avi BackupConfiguration Object API .EXAMPLE New-AviRestBackupconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBackupconfiguration') $result } } Function Remove-AVIRestBackupconfiguration { <# .SYNOPSIS Configure Avi BackupConfiguration Object API .EXAMPLE Get-AviRestBackupconfiguration | Remove-AviRestBackupconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Backupconfiguration')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Backupconfiguration', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBackupconfiguration')]$Backupconfiguration, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Backupconfiguration') { $uuid = $Backupconfiguration.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/backupconfiguration/${uuid}" } if ($pscmdlet.ShouldProcess("$($Backupconfiguration.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestBotconfigconsolidator { <# .SYNOPSIS Configure Avi BotConfigConsolidator Object API .EXAMPLE Get-AviRestBotconfigconsolidator .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'b', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/botconfigconsolidator$Uuid" : '/api/botconfigconsolidator' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestBotconfigconsolidator } } Function Set-AVIRestBotconfigconsolidator { <# .SYNOPSIS Configure Avi BotConfigConsolidator Object API .EXAMPLE $object = Get-AviRestBotconfigconsolidator $object.name = 'New name' Set-AviRestBotconfigconsolidator $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotconfigconsolidator')]$Botconfigconsolidator ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botconfigconsolidator.uuid $global:body = ConvertTo-JSON $Botconfigconsolidator -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botconfigconsolidator/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botconfigconsolidator.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotconfigconsolidator } } } Function New-AVIRestBotconfigconsolidator { <# .SYNOPSIS Configure Avi BotConfigConsolidator Object API .EXAMPLE New-AviRestBotconfigconsolidator .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotconfigconsolidator')]$Botconfigconsolidator ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botconfigconsolidator" Body = ConvertTo-JSON $Botconfigconsolidator -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botconfigconsolidator.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotconfigconsolidator } } } Function New-AVIRestBotconfigconsolidatorObject { <# .SYNOPSIS Configure Avi BotConfigConsolidator Object API .EXAMPLE New-AviRestBotconfigconsolidator .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotconfigconsolidator') $result } } Function Remove-AVIRestBotconfigconsolidator { <# .SYNOPSIS Configure Avi BotConfigConsolidator Object API .EXAMPLE Get-AviRestBotconfigconsolidator | Remove-AviRestBotconfigconsolidator .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botconfigconsolidator')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botconfigconsolidator', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotconfigconsolidator')]$Botconfigconsolidator, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botconfigconsolidator') { $uuid = $Botconfigconsolidator.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botconfigconsolidator/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botconfigconsolidator.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestBotdetectionpolicy { <# .SYNOPSIS Configure Avi BotDetectionPolicy Object API .EXAMPLE Get-AviRestBotdetectionpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'b', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/botdetectionpolicy$Uuid" : '/api/botdetectionpolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestBotdetectionpolicy } } Function Set-AVIRestBotdetectionpolicy { <# .SYNOPSIS Configure Avi BotDetectionPolicy Object API .EXAMPLE $object = Get-AviRestBotdetectionpolicy $object.name = 'New name' Set-AviRestBotdetectionpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotdetectionpolicy')]$Botdetectionpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botdetectionpolicy.uuid $global:body = ConvertTo-JSON $Botdetectionpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botdetectionpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botdetectionpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotdetectionpolicy } } } Function New-AVIRestBotdetectionpolicy { <# .SYNOPSIS Configure Avi BotDetectionPolicy Object API .EXAMPLE New-AviRestBotdetectionpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotdetectionpolicy')]$Botdetectionpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botdetectionpolicy" Body = ConvertTo-JSON $Botdetectionpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botdetectionpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotdetectionpolicy } } } Function New-AVIRestBotdetectionpolicyObject { <# .SYNOPSIS Configure Avi BotDetectionPolicy Object API .EXAMPLE New-AviRestBotdetectionpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotdetectionpolicy') $result } } Function Remove-AVIRestBotdetectionpolicy { <# .SYNOPSIS Configure Avi BotDetectionPolicy Object API .EXAMPLE Get-AviRestBotdetectionpolicy | Remove-AviRestBotdetectionpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botdetectionpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botdetectionpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotdetectionpolicy')]$Botdetectionpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botdetectionpolicy') { $uuid = $Botdetectionpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botdetectionpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botdetectionpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestBotipreputationtypemapping { <# .SYNOPSIS Configure Avi BotIPReputationTypeMapping Object API .EXAMPLE Get-AviRestBotipreputationtypemapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'b', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/botipreputationtypemapping$Uuid" : '/api/botipreputationtypemapping' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestBotipreputationtypemapping } } Function Set-AVIRestBotipreputationtypemapping { <# .SYNOPSIS Configure Avi BotIPReputationTypeMapping Object API .EXAMPLE $object = Get-AviRestBotipreputationtypemapping $object.name = 'New name' Set-AviRestBotipreputationtypemapping $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotipreputationtypemapping')]$Botipreputationtypemapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botipreputationtypemapping.uuid $global:body = ConvertTo-JSON $Botipreputationtypemapping -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botipreputationtypemapping/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botipreputationtypemapping.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotipreputationtypemapping } } } Function New-AVIRestBotipreputationtypemapping { <# .SYNOPSIS Configure Avi BotIPReputationTypeMapping Object API .EXAMPLE New-AviRestBotipreputationtypemapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotipreputationtypemapping')]$Botipreputationtypemapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botipreputationtypemapping" Body = ConvertTo-JSON $Botipreputationtypemapping -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botipreputationtypemapping.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotipreputationtypemapping } } } Function New-AVIRestBotipreputationtypemappingObject { <# .SYNOPSIS Configure Avi BotIPReputationTypeMapping Object API .EXAMPLE New-AviRestBotipreputationtypemapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotipreputationtypemapping') $result } } Function Remove-AVIRestBotipreputationtypemapping { <# .SYNOPSIS Configure Avi BotIPReputationTypeMapping Object API .EXAMPLE Get-AviRestBotipreputationtypemapping | Remove-AviRestBotipreputationtypemapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botipreputationtypemapping')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botipreputationtypemapping', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotipreputationtypemapping')]$Botipreputationtypemapping, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botipreputationtypemapping') { $uuid = $Botipreputationtypemapping.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botipreputationtypemapping/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botipreputationtypemapping.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestBotmapping { <# .SYNOPSIS Configure Avi BotMapping Object API .EXAMPLE Get-AviRestBotmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'b', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/botmapping$Uuid" : '/api/botmapping' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestBotmapping } } Function Set-AVIRestBotmapping { <# .SYNOPSIS Configure Avi BotMapping Object API .EXAMPLE $object = Get-AviRestBotmapping $object.name = 'New name' Set-AviRestBotmapping $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotmapping')]$Botmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Botmapping.uuid $global:body = ConvertTo-JSON $Botmapping -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/botmapping/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Botmapping.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestBotmapping } } } Function New-AVIRestBotmapping { <# .SYNOPSIS Configure Avi BotMapping Object API .EXAMPLE New-AviRestBotmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotmapping')]$Botmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/botmapping" Body = ConvertTo-JSON $Botmapping -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Botmapping.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestBotmapping } } } Function New-AVIRestBotmappingObject { <# .SYNOPSIS Configure Avi BotMapping Object API .EXAMPLE New-AviRestBotmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestBotmapping') $result } } Function Remove-AVIRestBotmapping { <# .SYNOPSIS Configure Avi BotMapping Object API .EXAMPLE Get-AviRestBotmapping | Remove-AviRestBotmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Botmapping')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Botmapping', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestBotmapping')]$Botmapping, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Botmapping') { $uuid = $Botmapping.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/botmapping/${uuid}" } if ($pscmdlet.ShouldProcess("$($Botmapping.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCertificatemanagementprofile { <# .SYNOPSIS Configure Avi CertificateManagementProfile Object API .EXAMPLE Get-AviRestCertificatemanagementprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/certificatemanagementprofile$Uuid" : '/api/certificatemanagementprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCertificatemanagementprofile } } Function Set-AVIRestCertificatemanagementprofile { <# .SYNOPSIS Configure Avi CertificateManagementProfile Object API .EXAMPLE $object = Get-AviRestCertificatemanagementprofile $object.name = 'New name' Set-AviRestCertificatemanagementprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCertificatemanagementprofile')]$Certificatemanagementprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Certificatemanagementprofile.uuid $global:body = ConvertTo-JSON $Certificatemanagementprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/certificatemanagementprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Certificatemanagementprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCertificatemanagementprofile } } } Function New-AVIRestCertificatemanagementprofile { <# .SYNOPSIS Configure Avi CertificateManagementProfile Object API .EXAMPLE New-AviRestCertificatemanagementprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCertificatemanagementprofile')]$Certificatemanagementprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/certificatemanagementprofile" Body = ConvertTo-JSON $Certificatemanagementprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Certificatemanagementprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCertificatemanagementprofile } } } Function New-AVIRestCertificatemanagementprofileObject { <# .SYNOPSIS Configure Avi CertificateManagementProfile Object API .EXAMPLE New-AviRestCertificatemanagementprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCertificatemanagementprofile') $result } } Function Remove-AVIRestCertificatemanagementprofile { <# .SYNOPSIS Configure Avi CertificateManagementProfile Object API .EXAMPLE Get-AviRestCertificatemanagementprofile | Remove-AviRestCertificatemanagementprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Certificatemanagementprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Certificatemanagementprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCertificatemanagementprofile')]$Certificatemanagementprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Certificatemanagementprofile') { $uuid = $Certificatemanagementprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/certificatemanagementprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Certificatemanagementprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCloud { <# .SYNOPSIS Configure Avi Cloud Object API .EXAMPLE Get-AviRestCloud .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'internals,status,health,hosts,autoscalegroup,autoscalegroupservers,placement/summary,placement/ineligible', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/cloud$Uuid" : '/api/cloud' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCloud } } Function Set-AVIRestCloud { <# .SYNOPSIS Configure Avi Cloud Object API .EXAMPLE $object = Get-AviRestCloud $object.name = 'New name' Set-AviRestCloud $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloud')]$Cloud ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloud.uuid $global:body = ConvertTo-JSON $Cloud -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloud/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloud.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloud } } } Function Set-AVIRestCloudGc { <# .SYNOPSIS Configure Avi Cloud Object API .EXAMPLE $object = Get-AviRestCloudGc $object.name = 'New name' Set-AviRestCloudGc $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudGc')]$CloudGc ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $CloudGc.uuid $global:body = ConvertTo-JSON $CloudGc -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloud/${uuid}/gc/" Body = $body } if ($pscmdlet.ShouldProcess("$($CloudGc.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudGc } } } Function New-AVIRestCloud { <# .SYNOPSIS Configure Avi Cloud Object API .EXAMPLE New-AviRestCloud .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloud')]$Cloud ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloud" Body = ConvertTo-JSON $Cloud -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloud.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloud } } } Function New-AVIRestCloudList { <# .SYNOPSIS Configure Avi Cloud Object API .EXAMPLE New-AviRestCloudList .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudList')]$CloudList ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloud/list" Body = ConvertTo-JSON $CloudList -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($CloudList.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudList } } } Function New-AVIRestCloudObject { <# .SYNOPSIS Configure Avi Cloud Object API .EXAMPLE New-AviRestCloud .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloud') $result } } Function Remove-AVIRestCloud { <# .SYNOPSIS Configure Avi Cloud Object API .EXAMPLE Get-AviRestCloud | Remove-AviRestCloud .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloud')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloud', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloud')]$Cloud, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloud') { $uuid = $Cloud.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloud/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloud.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCloudconnectoruser { <# .SYNOPSIS Configure Avi CloudConnectorUser Object API .EXAMPLE Get-AviRestCloudconnectoruser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/cloudconnectoruser$Uuid" : '/api/cloudconnectoruser' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCloudconnectoruser } } Function Set-AVIRestCloudconnectoruser { <# .SYNOPSIS Configure Avi CloudConnectorUser Object API .EXAMPLE $object = Get-AviRestCloudconnectoruser $object.name = 'New name' Set-AviRestCloudconnectoruser $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruser')]$Cloudconnectoruser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloudconnectoruser.uuid $global:body = ConvertTo-JSON $Cloudconnectoruser -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloudconnectoruser/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloudconnectoruser.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudconnectoruser } } } Function New-AVIRestCloudconnectoruser { <# .SYNOPSIS Configure Avi CloudConnectorUser Object API .EXAMPLE New-AviRestCloudconnectoruser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruser')]$Cloudconnectoruser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloudconnectoruser" Body = ConvertTo-JSON $Cloudconnectoruser -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloudconnectoruser.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudconnectoruser } } } Function New-AVIRestCloudconnectoruserObject { <# .SYNOPSIS Configure Avi CloudConnectorUser Object API .EXAMPLE New-AviRestCloudconnectoruser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudconnectoruser') $result } } Function Invoke-AVIRestCloudconnectoruserTest { <# .SYNOPSIS Configure Avi CloudConnectorUser Object API .EXAMPLE Invoke-AviRestCloudconnectoruserTest .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruserTest')]$CloudconnectoruserTest ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $CloudconnectoruserTest.uuid $splat = @{ Method = 'POST' Endpoint = "/api/cloudconnectoruser/${uuid}/test" Body = ConvertTo-JSON $CloudconnectoruserTest -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($CloudconnectoruserTest.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudconnectoruserTest } } } Function New-AVIRestCloudconnectoruserTestObject { <# .SYNOPSIS Configure Avi CloudConnectorUser Object API .EXAMPLE New-AviRestCloudconnectoruserTest .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "host": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudconnectoruserTest') $result } } Function Remove-AVIRestCloudconnectoruser { <# .SYNOPSIS Configure Avi CloudConnectorUser Object API .EXAMPLE Get-AviRestCloudconnectoruser | Remove-AviRestCloudconnectoruser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloudconnectoruser')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloudconnectoruser', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudconnectoruser')]$Cloudconnectoruser, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloudconnectoruser') { $uuid = $Cloudconnectoruser.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloudconnectoruser/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloudconnectoruser.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCloudInventory { <# .SYNOPSIS Configure Avi CloudInventory Object API .EXAMPLE Get-AviRestCloudInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/cloud-inventory$Uuid" : '/api/cloud-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCloudInventory } } Function Set-AVIRestCloudInventory { <# .SYNOPSIS Configure Avi CloudInventory Object API .EXAMPLE $object = Get-AviRestCloudInventory $object.name = 'New name' Set-AviRestCloudInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudInventory')]$CloudInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $CloudInventory.uuid $global:body = ConvertTo-JSON $CloudInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloud-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($CloudInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudInventory } } } Function New-AVIRestCloudInventory { <# .SYNOPSIS Configure Avi CloudInventory Object API .EXAMPLE New-AviRestCloudInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudInventory')]$CloudInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloud-inventory" Body = ConvertTo-JSON $CloudInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($CloudInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudInventory } } } Function New-AVIRestCloudInventoryObject { <# .SYNOPSIS Configure Avi CloudInventory Object API .EXAMPLE New-AviRestCloudInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudInventory') $result } } Function Remove-AVIRestCloudInventory { <# .SYNOPSIS Configure Avi CloudInventory Object API .EXAMPLE Get-AviRestCloudInventory | Remove-AviRestCloudInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'CloudInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'CloudInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudInventory')]$CloudInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'CloudInventory') { $uuid = $CloudInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloud-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($CloudInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCloudproperties { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE Get-AviRestCloudproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/controllerproperties/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/cloudproperties$Uuid" : '/api/cloudproperties' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCloudproperties } } Function Set-AVIRestCloudproperties { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE $object = Get-AviRestCloudproperties $object.name = 'New name' Set-AviRestCloudproperties $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudproperties')]$Cloudproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloudproperties.uuid $global:body = ConvertTo-JSON $Cloudproperties -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloudproperties/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloudproperties.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudproperties } } } Function Set-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE $object = Get-AviRestControllerproperties $object.name = 'New name' Set-AviRestControllerproperties $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerproperties')]$Controllerproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Controllerproperties.uuid $global:body = ConvertTo-JSON $Controllerproperties -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/controllerproperties/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Controllerproperties.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestControllerproperties } } } Function New-AVIRestCloudproperties { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE New-AviRestCloudproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudproperties')]$Cloudproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloudproperties" Body = ConvertTo-JSON $Cloudproperties -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloudproperties.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudproperties } } } Function New-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE New-AviRestControllerproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerproperties')]$Controllerproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/controllerproperties" Body = ConvertTo-JSON $Controllerproperties -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Controllerproperties.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestControllerproperties } } } Function New-AVIRestCloudpropertiesObject { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE New-AviRestCloudproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudproperties') $result } } Function New-AVIRestControllerpropertiesObject { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE New-AviRestControllerproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestControllerproperties') $result } } Function Remove-AVIRestCloudproperties { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE Get-AviRestCloudproperties | Remove-AviRestCloudproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloudproperties')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloudproperties', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudproperties')]$Cloudproperties, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloudproperties') { $uuid = $Cloudproperties.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloudproperties/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloudproperties.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi CloudProperties Object API .EXAMPLE Get-AviRestControllerproperties | Remove-AviRestControllerproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Controllerproperties')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Controllerproperties', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerproperties')]$Controllerproperties, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Controllerproperties') { $uuid = $Controllerproperties.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/controllerproperties/${uuid}" } if ($pscmdlet.ShouldProcess("$($Controllerproperties.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCloudruntime { <# .SYNOPSIS Configure Avi CloudRuntime Object API .EXAMPLE Get-AviRestCloudruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/cloudruntime$Uuid" : '/api/cloudruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCloudruntime } } Function Set-AVIRestCloudruntime { <# .SYNOPSIS Configure Avi CloudRuntime Object API .EXAMPLE $object = Get-AviRestCloudruntime $object.name = 'New name' Set-AviRestCloudruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudruntime')]$Cloudruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cloudruntime.uuid $global:body = ConvertTo-JSON $Cloudruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cloudruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cloudruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCloudruntime } } } Function New-AVIRestCloudruntime { <# .SYNOPSIS Configure Avi CloudRuntime Object API .EXAMPLE New-AviRestCloudruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudruntime')]$Cloudruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cloudruntime" Body = ConvertTo-JSON $Cloudruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cloudruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCloudruntime } } } Function New-AVIRestCloudruntimeObject { <# .SYNOPSIS Configure Avi CloudRuntime Object API .EXAMPLE New-AviRestCloudruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCloudruntime') $result } } Function Remove-AVIRestCloudruntime { <# .SYNOPSIS Configure Avi CloudRuntime Object API .EXAMPLE Get-AviRestCloudruntime | Remove-AviRestCloudruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cloudruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cloudruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCloudruntime')]$Cloudruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cloudruntime') { $uuid = $Cloudruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cloudruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cloudruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCluster { <# .SYNOPSIS Configure Avi Cluster Object API .EXAMPLE Get-AviRestCluster .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/cluster$Uuid" : '/api/cluster' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCluster } } Function Set-AVIRestCluster { <# .SYNOPSIS Configure Avi Cluster Object API .EXAMPLE $object = Get-AviRestCluster $object.name = 'New name' Set-AviRestCluster $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCluster')]$Cluster ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Cluster.uuid $global:body = ConvertTo-JSON $Cluster -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/cluster/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Cluster.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCluster } } } Function New-AVIRestCluster { <# .SYNOPSIS Configure Avi Cluster Object API .EXAMPLE New-AviRestCluster .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCluster')]$Cluster ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/cluster" Body = ConvertTo-JSON $Cluster -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Cluster.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCluster } } } Function New-AVIRestClusterObject { <# .SYNOPSIS Configure Avi Cluster Object API .EXAMPLE New-AviRestCluster .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCluster') $result } } Function Remove-AVIRestCluster { <# .SYNOPSIS Configure Avi Cluster Object API .EXAMPLE Get-AviRestCluster | Remove-AviRestCluster .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Cluster')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Cluster', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCluster')]$Cluster, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Cluster') { $uuid = $Cluster.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/cluster/${uuid}" } if ($pscmdlet.ShouldProcess("$($Cluster.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestClusterclouddetails { <# .SYNOPSIS Configure Avi ClusterCloudDetails Object API .EXAMPLE Get-AviRestClusterclouddetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/clusterclouddetails$Uuid" : '/api/clusterclouddetails' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestClusterclouddetails } } Function Set-AVIRestClusterclouddetails { <# .SYNOPSIS Configure Avi ClusterCloudDetails Object API .EXAMPLE $object = Get-AviRestClusterclouddetails $object.name = 'New name' Set-AviRestClusterclouddetails $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestClusterclouddetails')]$Clusterclouddetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Clusterclouddetails.uuid $global:body = ConvertTo-JSON $Clusterclouddetails -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/clusterclouddetails/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Clusterclouddetails.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestClusterclouddetails } } } Function New-AVIRestClusterclouddetails { <# .SYNOPSIS Configure Avi ClusterCloudDetails Object API .EXAMPLE New-AviRestClusterclouddetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestClusterclouddetails')]$Clusterclouddetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/clusterclouddetails" Body = ConvertTo-JSON $Clusterclouddetails -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Clusterclouddetails.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestClusterclouddetails } } } Function New-AVIRestClusterclouddetailsObject { <# .SYNOPSIS Configure Avi ClusterCloudDetails Object API .EXAMPLE New-AviRestClusterclouddetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestClusterclouddetails') $result } } Function Remove-AVIRestClusterclouddetails { <# .SYNOPSIS Configure Avi ClusterCloudDetails Object API .EXAMPLE Get-AviRestClusterclouddetails | Remove-AviRestClusterclouddetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Clusterclouddetails')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Clusterclouddetails', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestClusterclouddetails')]$Clusterclouddetails, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Clusterclouddetails') { $uuid = $Clusterclouddetails.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/clusterclouddetails/${uuid}" } if ($pscmdlet.ShouldProcess("$($Clusterclouddetails.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestLicense { <# .SYNOPSIS Configure Avi ControllerLicense Object API .EXAMPLE Get-AviRestLicense .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'l', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/license$Uuid" : '/api/license' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestLicense } } Function Set-AVIRestLicense { <# .SYNOPSIS Configure Avi ControllerLicense Object API .EXAMPLE $object = Get-AviRestLicense $object.name = 'New name' Set-AviRestLicense $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicense')]$License ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $License.uuid $global:body = ConvertTo-JSON $License -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/license/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($License.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLicense } } } Function New-AVIRestLicense { <# .SYNOPSIS Configure Avi ControllerLicense Object API .EXAMPLE New-AviRestLicense .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicense')]$License ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/license" Body = ConvertTo-JSON $License -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($License.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLicense } } } Function New-AVIRestLicenseObject { <# .SYNOPSIS Configure Avi ControllerLicense Object API .EXAMPLE New-AviRestLicense .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLicense') $result } } Function Remove-AVIRestLicense { <# .SYNOPSIS Configure Avi ControllerLicense Object API .EXAMPLE Get-AviRestLicense | Remove-AviRestLicense .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'License')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'License', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicense')]$License, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'License') { $uuid = $License.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/license/${uuid}" } if ($pscmdlet.ShouldProcess("$($License.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestControllerportalregistration { <# .SYNOPSIS Configure Avi ControllerPortalRegistration Object API .EXAMPLE Get-AviRestControllerportalregistration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/controllerportalregistration$Uuid" : '/api/controllerportalregistration' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestControllerportalregistration } } Function Set-AVIRestControllerportalregistration { <# .SYNOPSIS Configure Avi ControllerPortalRegistration Object API .EXAMPLE $object = Get-AviRestControllerportalregistration $object.name = 'New name' Set-AviRestControllerportalregistration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerportalregistration')]$Controllerportalregistration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Controllerportalregistration.uuid $global:body = ConvertTo-JSON $Controllerportalregistration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/controllerportalregistration/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Controllerportalregistration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestControllerportalregistration } } } Function New-AVIRestControllerportalregistration { <# .SYNOPSIS Configure Avi ControllerPortalRegistration Object API .EXAMPLE New-AviRestControllerportalregistration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerportalregistration')]$Controllerportalregistration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/controllerportalregistration" Body = ConvertTo-JSON $Controllerportalregistration -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Controllerportalregistration.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestControllerportalregistration } } } Function New-AVIRestControllerportalregistrationObject { <# .SYNOPSIS Configure Avi ControllerPortalRegistration Object API .EXAMPLE New-AviRestControllerportalregistration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestControllerportalregistration') $result } } Function Remove-AVIRestControllerportalregistration { <# .SYNOPSIS Configure Avi ControllerPortalRegistration Object API .EXAMPLE Get-AviRestControllerportalregistration | Remove-AviRestControllerportalregistration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Controllerportalregistration')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Controllerportalregistration', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerportalregistration')]$Controllerportalregistration, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Controllerportalregistration') { $uuid = $Controllerportalregistration.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/controllerportalregistration/${uuid}" } if ($pscmdlet.ShouldProcess("$($Controllerportalregistration.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi ControllerProperties Object API .EXAMPLE Get-AviRestControllerproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/$Uuid" : '/api/' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestControllerproperties } } Function Set-AVIRestControllerproperties { <# .SYNOPSIS Configure Avi ControllerProperties Object API .EXAMPLE $object = Get-AviRestControllerproperties $object.name = 'New name' Set-AviRestControllerproperties $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllerproperties')]$Controllerproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Controllerproperties.uuid $global:body = ConvertTo-JSON $Controllerproperties -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/controllerproperties" Body = $body } if ($pscmdlet.ShouldProcess("$($Controllerproperties.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestControllerproperties } } } Function Get-AVIRestControllersite { <# .SYNOPSIS Configure Avi ControllerSite Object API .EXAMPLE Get-AviRestControllersite .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/controllersite$Uuid" : '/api/controllersite' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestControllersite } } Function Set-AVIRestControllersite { <# .SYNOPSIS Configure Avi ControllerSite Object API .EXAMPLE $object = Get-AviRestControllersite $object.name = 'New name' Set-AviRestControllersite $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllersite')]$Controllersite ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Controllersite.uuid $global:body = ConvertTo-JSON $Controllersite -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/controllersite/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Controllersite.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestControllersite } } } Function New-AVIRestControllersite { <# .SYNOPSIS Configure Avi ControllerSite Object API .EXAMPLE New-AviRestControllersite .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllersite')]$Controllersite ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/controllersite" Body = ConvertTo-JSON $Controllersite -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Controllersite.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestControllersite } } } Function New-AVIRestControllersiteObject { <# .SYNOPSIS Configure Avi ControllerSite Object API .EXAMPLE New-AviRestControllersite .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestControllersite') $result } } Function Remove-AVIRestControllersite { <# .SYNOPSIS Configure Avi ControllerSite Object API .EXAMPLE Get-AviRestControllersite | Remove-AviRestControllersite .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Controllersite')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Controllersite', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestControllersite')]$Controllersite, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Controllersite') { $uuid = $Controllersite.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/controllersite/${uuid}" } if ($pscmdlet.ShouldProcess("$($Controllersite.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCsrfpolicy { <# .SYNOPSIS Configure Avi CSRFPolicy Object API .EXAMPLE Get-AviRestCsrfpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/csrfpolicy$Uuid" : '/api/csrfpolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCsrfpolicy } } Function Set-AVIRestCsrfpolicy { <# .SYNOPSIS Configure Avi CSRFPolicy Object API .EXAMPLE $object = Get-AviRestCsrfpolicy $object.name = 'New name' Set-AviRestCsrfpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCsrfpolicy')]$Csrfpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Csrfpolicy.uuid $global:body = ConvertTo-JSON $Csrfpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/csrfpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Csrfpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCsrfpolicy } } } Function New-AVIRestCsrfpolicy { <# .SYNOPSIS Configure Avi CSRFPolicy Object API .EXAMPLE New-AviRestCsrfpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCsrfpolicy')]$Csrfpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/csrfpolicy" Body = ConvertTo-JSON $Csrfpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Csrfpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCsrfpolicy } } } Function New-AVIRestCsrfpolicyObject { <# .SYNOPSIS Configure Avi CSRFPolicy Object API .EXAMPLE New-AviRestCsrfpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCsrfpolicy') $result } } Function Remove-AVIRestCsrfpolicy { <# .SYNOPSIS Configure Avi CSRFPolicy Object API .EXAMPLE Get-AviRestCsrfpolicy | Remove-AviRestCsrfpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Csrfpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Csrfpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCsrfpolicy')]$Csrfpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Csrfpolicy') { $uuid = $Csrfpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/csrfpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Csrfpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCustomerportalinfo { <# .SYNOPSIS Configure Avi CustomerPortalInfo Object API .EXAMPLE Get-AviRestCustomerportalinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/customerportalinfo$Uuid" : '/api/customerportalinfo' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCustomerportalinfo } } Function Set-AVIRestCustomerportalinfo { <# .SYNOPSIS Configure Avi CustomerPortalInfo Object API .EXAMPLE $object = Get-AviRestCustomerportalinfo $object.name = 'New name' Set-AviRestCustomerportalinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomerportalinfo')]$Customerportalinfo ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Customerportalinfo.uuid $global:body = ConvertTo-JSON $Customerportalinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/customerportalinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Customerportalinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCustomerportalinfo } } } Function New-AVIRestCustomerportalinfo { <# .SYNOPSIS Configure Avi CustomerPortalInfo Object API .EXAMPLE New-AviRestCustomerportalinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomerportalinfo')]$Customerportalinfo ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/customerportalinfo" Body = ConvertTo-JSON $Customerportalinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Customerportalinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCustomerportalinfo } } } Function New-AVIRestCustomerportalinfoObject { <# .SYNOPSIS Configure Avi CustomerPortalInfo Object API .EXAMPLE New-AviRestCustomerportalinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCustomerportalinfo') $result } } Function Remove-AVIRestCustomerportalinfo { <# .SYNOPSIS Configure Avi CustomerPortalInfo Object API .EXAMPLE Get-AviRestCustomerportalinfo | Remove-AviRestCustomerportalinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Customerportalinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Customerportalinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomerportalinfo')]$Customerportalinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Customerportalinfo') { $uuid = $Customerportalinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/customerportalinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Customerportalinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestCustomipamdnsprofile { <# .SYNOPSIS Configure Avi CustomIpamDnsProfile Object API .EXAMPLE Get-AviRestCustomipamdnsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'c', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/customipamdnsprofile$Uuid" : '/api/customipamdnsprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestCustomipamdnsprofile } } Function Set-AVIRestCustomipamdnsprofile { <# .SYNOPSIS Configure Avi CustomIpamDnsProfile Object API .EXAMPLE $object = Get-AviRestCustomipamdnsprofile $object.name = 'New name' Set-AviRestCustomipamdnsprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomipamdnsprofile')]$Customipamdnsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Customipamdnsprofile.uuid $global:body = ConvertTo-JSON $Customipamdnsprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/customipamdnsprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Customipamdnsprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestCustomipamdnsprofile } } } Function New-AVIRestCustomipamdnsprofile { <# .SYNOPSIS Configure Avi CustomIpamDnsProfile Object API .EXAMPLE New-AviRestCustomipamdnsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomipamdnsprofile')]$Customipamdnsprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/customipamdnsprofile" Body = ConvertTo-JSON $Customipamdnsprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Customipamdnsprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestCustomipamdnsprofile } } } Function New-AVIRestCustomipamdnsprofileObject { <# .SYNOPSIS Configure Avi CustomIpamDnsProfile Object API .EXAMPLE New-AviRestCustomipamdnsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestCustomipamdnsprofile') $result } } Function Remove-AVIRestCustomipamdnsprofile { <# .SYNOPSIS Configure Avi CustomIpamDnsProfile Object API .EXAMPLE Get-AviRestCustomipamdnsprofile | Remove-AviRestCustomipamdnsprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Customipamdnsprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Customipamdnsprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestCustomipamdnsprofile')]$Customipamdnsprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Customipamdnsprofile') { $uuid = $Customipamdnsprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/customipamdnsprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Customipamdnsprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestDebugcontroller { <# .SYNOPSIS Configure Avi DebugController Object API .EXAMPLE Get-AviRestDebugcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'd', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/debugcontroller$Uuid" : '/api/debugcontroller' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestDebugcontroller } } Function Set-AVIRestDebugcontroller { <# .SYNOPSIS Configure Avi DebugController Object API .EXAMPLE $object = Get-AviRestDebugcontroller $object.name = 'New name' Set-AviRestDebugcontroller $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugcontroller')]$Debugcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Debugcontroller.uuid $global:body = ConvertTo-JSON $Debugcontroller -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/debugcontroller/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Debugcontroller.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDebugcontroller } } } Function New-AVIRestDebugcontroller { <# .SYNOPSIS Configure Avi DebugController Object API .EXAMPLE New-AviRestDebugcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugcontroller')]$Debugcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/debugcontroller" Body = ConvertTo-JSON $Debugcontroller -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Debugcontroller.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDebugcontroller } } } Function New-AVIRestDebugcontrollerObject { <# .SYNOPSIS Configure Avi DebugController Object API .EXAMPLE New-AviRestDebugcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDebugcontroller') $result } } Function Remove-AVIRestDebugcontroller { <# .SYNOPSIS Configure Avi DebugController Object API .EXAMPLE Get-AviRestDebugcontroller | Remove-AviRestDebugcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Debugcontroller')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Debugcontroller', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugcontroller')]$Debugcontroller, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Debugcontroller') { $uuid = $Debugcontroller.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/debugcontroller/${uuid}" } if ($pscmdlet.ShouldProcess("$($Debugcontroller.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestDebugserviceengine { <# .SYNOPSIS Configure Avi DebugServiceEngine Object API .EXAMPLE Get-AviRestDebugserviceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'faultruntime', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/debugserviceengine$Uuid" : '/api/debugserviceengine' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestDebugserviceengine } } Function Set-AVIRestDebugserviceengine { <# .SYNOPSIS Configure Avi DebugServiceEngine Object API .EXAMPLE $object = Get-AviRestDebugserviceengine $object.name = 'New name' Set-AviRestDebugserviceengine $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugserviceengine')]$Debugserviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Debugserviceengine.uuid $global:body = ConvertTo-JSON $Debugserviceengine -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/debugserviceengine/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Debugserviceengine.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDebugserviceengine } } } Function New-AVIRestDebugserviceengine { <# .SYNOPSIS Configure Avi DebugServiceEngine Object API .EXAMPLE New-AviRestDebugserviceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugserviceengine')]$Debugserviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/debugserviceengine" Body = ConvertTo-JSON $Debugserviceengine -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Debugserviceengine.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDebugserviceengine } } } Function New-AVIRestDebugserviceengineObject { <# .SYNOPSIS Configure Avi DebugServiceEngine Object API .EXAMPLE New-AviRestDebugserviceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDebugserviceengine') $result } } Function Remove-AVIRestDebugserviceengine { <# .SYNOPSIS Configure Avi DebugServiceEngine Object API .EXAMPLE Get-AviRestDebugserviceengine | Remove-AviRestDebugserviceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Debugserviceengine')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Debugserviceengine', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugserviceengine')]$Debugserviceengine, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Debugserviceengine') { $uuid = $Debugserviceengine.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/debugserviceengine/${uuid}" } if ($pscmdlet.ShouldProcess("$($Debugserviceengine.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi DebugVirtualService Object API .EXAMPLE Get-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'd', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/debugvirtualservice$Uuid" : '/api/debugvirtualservice' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestDebugvirtualservice } } Function Set-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi DebugVirtualService Object API .EXAMPLE $object = Get-AviRestDebugvirtualservice $object.name = 'New name' Set-AviRestDebugvirtualservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Debugvirtualservice.uuid $global:body = ConvertTo-JSON $Debugvirtualservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/debugvirtualservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDebugvirtualservice } } } Function New-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi DebugVirtualService Object API .EXAMPLE New-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/debugvirtualservice" Body = ConvertTo-JSON $Debugvirtualservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDebugvirtualservice } } } Function New-AVIRestDebugvirtualserviceObject { <# .SYNOPSIS Configure Avi DebugVirtualService Object API .EXAMPLE New-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDebugvirtualservice') $result } } Function Remove-AVIRestDebugvirtualservice { <# .SYNOPSIS Configure Avi DebugVirtualService Object API .EXAMPLE Get-AviRestDebugvirtualservice | Remove-AviRestDebugvirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Debugvirtualservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Debugvirtualservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDebugvirtualservice')]$Debugvirtualservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Debugvirtualservice') { $uuid = $Debugvirtualservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/debugvirtualservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Debugvirtualservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestDnspolicy { <# .SYNOPSIS Configure Avi DnsPolicy Object API .EXAMPLE Get-AviRestDnspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'd', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/dnspolicy$Uuid" : '/api/dnspolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestDnspolicy } } Function Set-AVIRestDnspolicy { <# .SYNOPSIS Configure Avi DnsPolicy Object API .EXAMPLE $object = Get-AviRestDnspolicy $object.name = 'New name' Set-AviRestDnspolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDnspolicy')]$Dnspolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Dnspolicy.uuid $global:body = ConvertTo-JSON $Dnspolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/dnspolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Dnspolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDnspolicy } } } Function New-AVIRestDnspolicy { <# .SYNOPSIS Configure Avi DnsPolicy Object API .EXAMPLE New-AviRestDnspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDnspolicy')]$Dnspolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/dnspolicy" Body = ConvertTo-JSON $Dnspolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Dnspolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDnspolicy } } } Function New-AVIRestDnspolicyObject { <# .SYNOPSIS Configure Avi DnsPolicy Object API .EXAMPLE New-AviRestDnspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDnspolicy') $result } } Function Remove-AVIRestDnspolicy { <# .SYNOPSIS Configure Avi DnsPolicy Object API .EXAMPLE Get-AviRestDnspolicy | Remove-AviRestDnspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Dnspolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Dnspolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDnspolicy')]$Dnspolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Dnspolicy') { $uuid = $Dnspolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/dnspolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Dnspolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestDynamicdnsrecord { <# .SYNOPSIS Configure Avi DynamicDnsRecord Object API .EXAMPLE Get-AviRestDynamicdnsrecord .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'd', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/dynamicdnsrecord$Uuid" : '/api/dynamicdnsrecord' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestDynamicdnsrecord } } Function Set-AVIRestDynamicdnsrecord { <# .SYNOPSIS Configure Avi DynamicDnsRecord Object API .EXAMPLE $object = Get-AviRestDynamicdnsrecord $object.name = 'New name' Set-AviRestDynamicdnsrecord $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDynamicdnsrecord')]$Dynamicdnsrecord ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Dynamicdnsrecord.uuid $global:body = ConvertTo-JSON $Dynamicdnsrecord -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/dynamicdnsrecord/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Dynamicdnsrecord.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestDynamicdnsrecord } } } Function New-AVIRestDynamicdnsrecord { <# .SYNOPSIS Configure Avi DynamicDnsRecord Object API .EXAMPLE New-AviRestDynamicdnsrecord .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDynamicdnsrecord')]$Dynamicdnsrecord ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/dynamicdnsrecord" Body = ConvertTo-JSON $Dynamicdnsrecord -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Dynamicdnsrecord.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestDynamicdnsrecord } } } Function New-AVIRestDynamicdnsrecordObject { <# .SYNOPSIS Configure Avi DynamicDnsRecord Object API .EXAMPLE New-AviRestDynamicdnsrecord .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestDynamicdnsrecord') $result } } Function Remove-AVIRestDynamicdnsrecord { <# .SYNOPSIS Configure Avi DynamicDnsRecord Object API .EXAMPLE Get-AviRestDynamicdnsrecord | Remove-AviRestDynamicdnsrecord .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Dynamicdnsrecord')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Dynamicdnsrecord', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestDynamicdnsrecord')]$Dynamicdnsrecord, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Dynamicdnsrecord') { $uuid = $Dynamicdnsrecord.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/dynamicdnsrecord/${uuid}" } if ($pscmdlet.ShouldProcess("$($Dynamicdnsrecord.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestErrorpagebody { <# .SYNOPSIS Configure Avi ErrorPageBody Object API .EXAMPLE Get-AviRestErrorpagebody .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'e', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/errorpagebody$Uuid" : '/api/errorpagebody' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestErrorpagebody } } Function Set-AVIRestErrorpagebody { <# .SYNOPSIS Configure Avi ErrorPageBody Object API .EXAMPLE $object = Get-AviRestErrorpagebody $object.name = 'New name' Set-AviRestErrorpagebody $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpagebody')]$Errorpagebody ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Errorpagebody.uuid $global:body = ConvertTo-JSON $Errorpagebody -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/errorpagebody/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Errorpagebody.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpagebody } } } Function New-AVIRestErrorpagebody { <# .SYNOPSIS Configure Avi ErrorPageBody Object API .EXAMPLE New-AviRestErrorpagebody .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpagebody')]$Errorpagebody ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/errorpagebody" Body = ConvertTo-JSON $Errorpagebody -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Errorpagebody.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpagebody } } } Function New-AVIRestErrorpagebodyObject { <# .SYNOPSIS Configure Avi ErrorPageBody Object API .EXAMPLE New-AviRestErrorpagebody .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestErrorpagebody') $result } } Function Remove-AVIRestErrorpagebody { <# .SYNOPSIS Configure Avi ErrorPageBody Object API .EXAMPLE Get-AviRestErrorpagebody | Remove-AviRestErrorpagebody .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Errorpagebody')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Errorpagebody', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpagebody')]$Errorpagebody, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Errorpagebody') { $uuid = $Errorpagebody.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/errorpagebody/${uuid}" } if ($pscmdlet.ShouldProcess("$($Errorpagebody.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestErrorpageprofile { <# .SYNOPSIS Configure Avi ErrorPageProfile Object API .EXAMPLE Get-AviRestErrorpageprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'e', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/errorpageprofile$Uuid" : '/api/errorpageprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestErrorpageprofile } } Function Set-AVIRestErrorpageprofile { <# .SYNOPSIS Configure Avi ErrorPageProfile Object API .EXAMPLE $object = Get-AviRestErrorpageprofile $object.name = 'New name' Set-AviRestErrorpageprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpageprofile')]$Errorpageprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Errorpageprofile.uuid $global:body = ConvertTo-JSON $Errorpageprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/errorpageprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Errorpageprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpageprofile } } } Function New-AVIRestErrorpageprofile { <# .SYNOPSIS Configure Avi ErrorPageProfile Object API .EXAMPLE New-AviRestErrorpageprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpageprofile')]$Errorpageprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/errorpageprofile" Body = ConvertTo-JSON $Errorpageprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Errorpageprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestErrorpageprofile } } } Function New-AVIRestErrorpageprofileObject { <# .SYNOPSIS Configure Avi ErrorPageProfile Object API .EXAMPLE New-AviRestErrorpageprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestErrorpageprofile') $result } } Function Remove-AVIRestErrorpageprofile { <# .SYNOPSIS Configure Avi ErrorPageProfile Object API .EXAMPLE Get-AviRestErrorpageprofile | Remove-AviRestErrorpageprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Errorpageprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Errorpageprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestErrorpageprofile')]$Errorpageprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Errorpageprofile') { $uuid = $Errorpageprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/errorpageprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Errorpageprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi FederationCheckpoint Object API .EXAMPLE Get-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'pendingobjects', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/federationcheckpoint$Uuid" : '/api/federationcheckpoint' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpoint } } Function Set-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi FederationCheckpoint Object API .EXAMPLE $object = Get-AviRestFederationcheckpoint $object.name = 'New name' Set-AviRestFederationcheckpoint $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Federationcheckpoint.uuid $global:body = ConvertTo-JSON $Federationcheckpoint -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/federationcheckpoint/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpoint } } } Function New-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi FederationCheckpoint Object API .EXAMPLE New-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/federationcheckpoint" Body = ConvertTo-JSON $Federationcheckpoint -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpoint } } } Function New-AVIRestFederationcheckpointObject { <# .SYNOPSIS Configure Avi FederationCheckpoint Object API .EXAMPLE New-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestFederationcheckpoint') $result } } Function Remove-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi FederationCheckpoint Object API .EXAMPLE Get-AviRestFederationcheckpoint | Remove-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Federationcheckpoint')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Federationcheckpoint', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Federationcheckpoint') { $uuid = $Federationcheckpoint.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/federationcheckpoint/${uuid}" } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestFederationcheckpointInventory { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE Get-AviRestFederationcheckpointInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/federationcheckpoint/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/federationcheckpoint-inventory$Uuid" : '/api/federationcheckpoint-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpointInventory } } Function Set-AVIRestFederationcheckpointInventory { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE $object = Get-AviRestFederationcheckpointInventory $object.name = 'New name' Set-AviRestFederationcheckpointInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpointInventory')]$FederationcheckpointInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $FederationcheckpointInventory.uuid $global:body = ConvertTo-JSON $FederationcheckpointInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/federationcheckpoint-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($FederationcheckpointInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpointInventory } } } Function Set-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE $object = Get-AviRestFederationcheckpoint $object.name = 'New name' Set-AviRestFederationcheckpoint $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Federationcheckpoint.uuid $global:body = ConvertTo-JSON $Federationcheckpoint -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/federationcheckpoint/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpoint } } } Function New-AVIRestFederationcheckpointInventory { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE New-AviRestFederationcheckpointInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpointInventory')]$FederationcheckpointInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/federationcheckpoint-inventory" Body = ConvertTo-JSON $FederationcheckpointInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($FederationcheckpointInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpointInventory } } } Function New-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE New-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/federationcheckpoint" Body = ConvertTo-JSON $Federationcheckpoint -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestFederationcheckpoint } } } Function New-AVIRestFederationcheckpointInventoryObject { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE New-AviRestFederationcheckpointInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestFederationcheckpointInventory') $result } } Function New-AVIRestFederationcheckpointObject { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE New-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestFederationcheckpoint') $result } } Function Remove-AVIRestFederationcheckpointInventory { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE Get-AviRestFederationcheckpointInventory | Remove-AviRestFederationcheckpointInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'FederationcheckpointInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'FederationcheckpointInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpointInventory')]$FederationcheckpointInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'FederationcheckpointInventory') { $uuid = $FederationcheckpointInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/federationcheckpoint-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($FederationcheckpointInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestFederationcheckpoint { <# .SYNOPSIS Configure Avi FederationCheckpointInventory Object API .EXAMPLE Get-AviRestFederationcheckpoint | Remove-AviRestFederationcheckpoint .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Federationcheckpoint')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Federationcheckpoint', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFederationcheckpoint')]$Federationcheckpoint, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Federationcheckpoint') { $uuid = $Federationcheckpoint.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/federationcheckpoint/${uuid}" } if ($pscmdlet.ShouldProcess("$($Federationcheckpoint.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestFileobject { <# .SYNOPSIS Configure Avi FileObject Object API .EXAMPLE Get-AviRestFileobject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'f', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/fileobject$Uuid" : '/api/fileobject' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestFileobject } } Function Set-AVIRestFileobject { <# .SYNOPSIS Configure Avi FileObject Object API .EXAMPLE $object = Get-AviRestFileobject $object.name = 'New name' Set-AviRestFileobject $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFileobject')]$Fileobject ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Fileobject.uuid $global:body = ConvertTo-JSON $Fileobject -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/fileobject/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Fileobject.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestFileobject } } } Function New-AVIRestFileobject { <# .SYNOPSIS Configure Avi FileObject Object API .EXAMPLE New-AviRestFileobject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFileobject')]$Fileobject ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/fileobject" Body = ConvertTo-JSON $Fileobject -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Fileobject.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestFileobject } } } Function New-AVIRestFileobjectObject { <# .SYNOPSIS Configure Avi FileObject Object API .EXAMPLE New-AviRestFileobject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestFileobject') $result } } Function Remove-AVIRestFileobject { <# .SYNOPSIS Configure Avi FileObject Object API .EXAMPLE Get-AviRestFileobject | Remove-AviRestFileobject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Fileobject')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Fileobject', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestFileobject')]$Fileobject, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Fileobject') { $uuid = $Fileobject.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/fileobject/${uuid}" } if ($pscmdlet.ShouldProcess("$($Fileobject.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestGeodb { <# .SYNOPSIS Configure Avi GeoDB Object API .EXAMPLE Get-AviRestGeodb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/internal', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/geodb$Uuid" : '/api/geodb' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestGeodb } } Function Set-AVIRestGeodb { <# .SYNOPSIS Configure Avi GeoDB Object API .EXAMPLE $object = Get-AviRestGeodb $object.name = 'New name' Set-AviRestGeodb $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGeodb')]$Geodb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Geodb.uuid $global:body = ConvertTo-JSON $Geodb -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/geodb/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Geodb.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGeodb } } } Function New-AVIRestGeodb { <# .SYNOPSIS Configure Avi GeoDB Object API .EXAMPLE New-AviRestGeodb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGeodb')]$Geodb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/geodb" Body = ConvertTo-JSON $Geodb -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Geodb.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGeodb } } } Function New-AVIRestGeodbObject { <# .SYNOPSIS Configure Avi GeoDB Object API .EXAMPLE New-AviRestGeodb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGeodb') $result } } Function Remove-AVIRestGeodb { <# .SYNOPSIS Configure Avi GeoDB Object API .EXAMPLE Get-AviRestGeodb | Remove-AviRestGeodb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Geodb')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Geodb', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGeodb')]$Geodb, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Geodb') { $uuid = $Geodb.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/geodb/${uuid}" } if ($pscmdlet.ShouldProcess("$($Geodb.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestGslb { <# .SYNOPSIS Configure Avi Gslb Object API .EXAMPLE Get-AviRestGslb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime,runtime/detail,runtime/internal', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/gslb$Uuid" : '/api/gslb' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestGslb } } Function Set-AVIRestGslb { <# .SYNOPSIS Configure Avi Gslb Object API .EXAMPLE $object = Get-AviRestGslb $object.name = 'New name' Set-AviRestGslb $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslb')]$Gslb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Gslb.uuid $global:body = ConvertTo-JSON $Gslb -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslb/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Gslb.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslb } } } Function New-AVIRestGslb { <# .SYNOPSIS Configure Avi Gslb Object API .EXAMPLE New-AviRestGslb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslb')]$Gslb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslb" Body = ConvertTo-JSON $Gslb -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Gslb.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslb } } } Function New-AVIRestGslbObject { <# .SYNOPSIS Configure Avi Gslb Object API .EXAMPLE New-AviRestGslb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslb') $result } } Function Remove-AVIRestGslb { <# .SYNOPSIS Configure Avi Gslb Object API .EXAMPLE Get-AviRestGslb | Remove-AviRestGslb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Gslb')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Gslb', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslb')]$Gslb, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Gslb') { $uuid = $Gslb.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslb/${uuid}" } if ($pscmdlet.ShouldProcess("$($Gslb.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestGslbgeodbprofile { <# .SYNOPSIS Configure Avi GslbGeoDbProfile Object API .EXAMPLE Get-AviRestGslbgeodbprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/gslbgeodbprofile$Uuid" : '/api/gslbgeodbprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestGslbgeodbprofile } } Function Set-AVIRestGslbgeodbprofile { <# .SYNOPSIS Configure Avi GslbGeoDbProfile Object API .EXAMPLE $object = Get-AviRestGslbgeodbprofile $object.name = 'New name' Set-AviRestGslbgeodbprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbgeodbprofile')]$Gslbgeodbprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Gslbgeodbprofile.uuid $global:body = ConvertTo-JSON $Gslbgeodbprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslbgeodbprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Gslbgeodbprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbgeodbprofile } } } Function New-AVIRestGslbgeodbprofile { <# .SYNOPSIS Configure Avi GslbGeoDbProfile Object API .EXAMPLE New-AviRestGslbgeodbprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbgeodbprofile')]$Gslbgeodbprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslbgeodbprofile" Body = ConvertTo-JSON $Gslbgeodbprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Gslbgeodbprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbgeodbprofile } } } Function New-AVIRestGslbgeodbprofileObject { <# .SYNOPSIS Configure Avi GslbGeoDbProfile Object API .EXAMPLE New-AviRestGslbgeodbprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbgeodbprofile') $result } } Function Remove-AVIRestGslbgeodbprofile { <# .SYNOPSIS Configure Avi GslbGeoDbProfile Object API .EXAMPLE Get-AviRestGslbgeodbprofile | Remove-AviRestGslbgeodbprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Gslbgeodbprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Gslbgeodbprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbgeodbprofile')]$Gslbgeodbprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Gslbgeodbprofile') { $uuid = $Gslbgeodbprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslbgeodbprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Gslbgeodbprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestGslbInventory { <# .SYNOPSIS Configure Avi GslbInventory Object API .EXAMPLE Get-AviRestGslbInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'g', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/gslb-inventory$Uuid" : '/api/gslb-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestGslbInventory } } Function Set-AVIRestGslbInventory { <# .SYNOPSIS Configure Avi GslbInventory Object API .EXAMPLE $object = Get-AviRestGslbInventory $object.name = 'New name' Set-AviRestGslbInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbInventory')]$GslbInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $GslbInventory.uuid $global:body = ConvertTo-JSON $GslbInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslb-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($GslbInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbInventory } } } Function New-AVIRestGslbInventory { <# .SYNOPSIS Configure Avi GslbInventory Object API .EXAMPLE New-AviRestGslbInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbInventory')]$GslbInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslb-inventory" Body = ConvertTo-JSON $GslbInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($GslbInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbInventory } } } Function New-AVIRestGslbInventoryObject { <# .SYNOPSIS Configure Avi GslbInventory Object API .EXAMPLE New-AviRestGslbInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbInventory') $result } } Function Remove-AVIRestGslbInventory { <# .SYNOPSIS Configure Avi GslbInventory Object API .EXAMPLE Get-AviRestGslbInventory | Remove-AviRestGslbInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'GslbInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'GslbInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbInventory')]$GslbInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'GslbInventory') { $uuid = $GslbInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslb-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($GslbInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestGslbservice { <# .SYNOPSIS Configure Avi GslbService Object API .EXAMPLE Get-AviRestGslbservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/gslbservice$Uuid" : '/api/gslbservice' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestGslbservice } } Function Set-AVIRestGslbservice { <# .SYNOPSIS Configure Avi GslbService Object API .EXAMPLE $object = Get-AviRestGslbservice $object.name = 'New name' Set-AviRestGslbservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbservice')]$Gslbservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Gslbservice.uuid $global:body = ConvertTo-JSON $Gslbservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslbservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Gslbservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbservice } } } Function New-AVIRestGslbservice { <# .SYNOPSIS Configure Avi GslbService Object API .EXAMPLE New-AviRestGslbservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbservice')]$Gslbservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslbservice" Body = ConvertTo-JSON $Gslbservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Gslbservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbservice } } } Function New-AVIRestGslbserviceObject { <# .SYNOPSIS Configure Avi GslbService Object API .EXAMPLE New-AviRestGslbservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbservice') $result } } Function Remove-AVIRestGslbservice { <# .SYNOPSIS Configure Avi GslbService Object API .EXAMPLE Get-AviRestGslbservice | Remove-AviRestGslbservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Gslbservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Gslbservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbservice')]$Gslbservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Gslbservice') { $uuid = $Gslbservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslbservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Gslbservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestGslbserviceInventory { <# .SYNOPSIS Configure Avi GslbServiceInventory Object API .EXAMPLE Get-AviRestGslbserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'g', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/gslbservice-inventory$Uuid" : '/api/gslbservice-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestGslbserviceInventory } } Function Set-AVIRestGslbserviceInventory { <# .SYNOPSIS Configure Avi GslbServiceInventory Object API .EXAMPLE $object = Get-AviRestGslbserviceInventory $object.name = 'New name' Set-AviRestGslbserviceInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbserviceInventory')]$GslbserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $GslbserviceInventory.uuid $global:body = ConvertTo-JSON $GslbserviceInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/gslbservice-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($GslbserviceInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestGslbserviceInventory } } } Function New-AVIRestGslbserviceInventory { <# .SYNOPSIS Configure Avi GslbServiceInventory Object API .EXAMPLE New-AviRestGslbserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbserviceInventory')]$GslbserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/gslbservice-inventory" Body = ConvertTo-JSON $GslbserviceInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($GslbserviceInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestGslbserviceInventory } } } Function New-AVIRestGslbserviceInventoryObject { <# .SYNOPSIS Configure Avi GslbServiceInventory Object API .EXAMPLE New-AviRestGslbserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestGslbserviceInventory') $result } } Function Remove-AVIRestGslbserviceInventory { <# .SYNOPSIS Configure Avi GslbServiceInventory Object API .EXAMPLE Get-AviRestGslbserviceInventory | Remove-AviRestGslbserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'GslbserviceInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'GslbserviceInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestGslbserviceInventory')]$GslbserviceInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'GslbserviceInventory') { $uuid = $GslbserviceInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/gslbservice-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($GslbserviceInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestHardwaresecuritymodulegroup { <# .SYNOPSIS Configure Avi HardwareSecurityModuleGroup Object API .EXAMPLE Get-AviRestHardwaresecuritymodulegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'h', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/hardwaresecuritymodulegroup$Uuid" : '/api/hardwaresecuritymodulegroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestHardwaresecuritymodulegroup } } Function Set-AVIRestHardwaresecuritymodulegroup { <# .SYNOPSIS Configure Avi HardwareSecurityModuleGroup Object API .EXAMPLE $object = Get-AviRestHardwaresecuritymodulegroup $object.name = 'New name' Set-AviRestHardwaresecuritymodulegroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHardwaresecuritymodulegroup')]$Hardwaresecuritymodulegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Hardwaresecuritymodulegroup.uuid $global:body = ConvertTo-JSON $Hardwaresecuritymodulegroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/hardwaresecuritymodulegroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Hardwaresecuritymodulegroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestHardwaresecuritymodulegroup } } } Function New-AVIRestHardwaresecuritymodulegroup { <# .SYNOPSIS Configure Avi HardwareSecurityModuleGroup Object API .EXAMPLE New-AviRestHardwaresecuritymodulegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHardwaresecuritymodulegroup')]$Hardwaresecuritymodulegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/hardwaresecuritymodulegroup" Body = ConvertTo-JSON $Hardwaresecuritymodulegroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Hardwaresecuritymodulegroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestHardwaresecuritymodulegroup } } } Function New-AVIRestHardwaresecuritymodulegroupObject { <# .SYNOPSIS Configure Avi HardwareSecurityModuleGroup Object API .EXAMPLE New-AviRestHardwaresecuritymodulegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestHardwaresecuritymodulegroup') $result } } Function Remove-AVIRestHardwaresecuritymodulegroup { <# .SYNOPSIS Configure Avi HardwareSecurityModuleGroup Object API .EXAMPLE Get-AviRestHardwaresecuritymodulegroup | Remove-AviRestHardwaresecuritymodulegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Hardwaresecuritymodulegroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Hardwaresecuritymodulegroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHardwaresecuritymodulegroup')]$Hardwaresecuritymodulegroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Hardwaresecuritymodulegroup') { $uuid = $Hardwaresecuritymodulegroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/hardwaresecuritymodulegroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Hardwaresecuritymodulegroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestHealthmonitor { <# .SYNOPSIS Configure Avi HealthMonitor Object API .EXAMPLE Get-AviRestHealthmonitor .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'federated_info', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/healthmonitor$Uuid" : '/api/healthmonitor' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestHealthmonitor } } Function Set-AVIRestHealthmonitor { <# .SYNOPSIS Configure Avi HealthMonitor Object API .EXAMPLE $object = Get-AviRestHealthmonitor $object.name = 'New name' Set-AviRestHealthmonitor $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHealthmonitor')]$Healthmonitor ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Healthmonitor.uuid $global:body = ConvertTo-JSON $Healthmonitor -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/healthmonitor/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Healthmonitor.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestHealthmonitor } } } Function New-AVIRestHealthmonitor { <# .SYNOPSIS Configure Avi HealthMonitor Object API .EXAMPLE New-AviRestHealthmonitor .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHealthmonitor')]$Healthmonitor ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/healthmonitor" Body = ConvertTo-JSON $Healthmonitor -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Healthmonitor.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestHealthmonitor } } } Function New-AVIRestHealthmonitorObject { <# .SYNOPSIS Configure Avi HealthMonitor Object API .EXAMPLE New-AviRestHealthmonitor .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestHealthmonitor') $result } } Function Remove-AVIRestHealthmonitor { <# .SYNOPSIS Configure Avi HealthMonitor Object API .EXAMPLE Get-AviRestHealthmonitor | Remove-AviRestHealthmonitor .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Healthmonitor')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Healthmonitor', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHealthmonitor')]$Healthmonitor, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Healthmonitor') { $uuid = $Healthmonitor.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/healthmonitor/${uuid}" } if ($pscmdlet.ShouldProcess("$($Healthmonitor.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAnalyticsHealthscorePool { <# .SYNOPSIS Configure Avi Object API .EXAMPLE Get-AviRestAnalyticsHealthscorePool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/analytics/healthscore/serviceengine/{uuid},/analytics/healthscore/virtualservice/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/analytics/healthscore/pool/$Uuid" : '/api/analytics/healthscore/pool/' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAnalyticsHealthscorePool } } Function Get-AVIRestHttppolicyset { <# .SYNOPSIS Configure Avi HTTPPolicySet Object API .EXAMPLE Get-AviRestHttppolicyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'h', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/httppolicyset$Uuid" : '/api/httppolicyset' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestHttppolicyset } } Function Set-AVIRestHttppolicyset { <# .SYNOPSIS Configure Avi HTTPPolicySet Object API .EXAMPLE $object = Get-AviRestHttppolicyset $object.name = 'New name' Set-AviRestHttppolicyset $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHttppolicyset')]$Httppolicyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Httppolicyset.uuid $global:body = ConvertTo-JSON $Httppolicyset -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/httppolicyset/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Httppolicyset.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestHttppolicyset } } } Function New-AVIRestHttppolicyset { <# .SYNOPSIS Configure Avi HTTPPolicySet Object API .EXAMPLE New-AviRestHttppolicyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHttppolicyset')]$Httppolicyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/httppolicyset" Body = ConvertTo-JSON $Httppolicyset -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Httppolicyset.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestHttppolicyset } } } Function New-AVIRestHttppolicysetObject { <# .SYNOPSIS Configure Avi HTTPPolicySet Object API .EXAMPLE New-AviRestHttppolicyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestHttppolicyset') $result } } Function Remove-AVIRestHttppolicyset { <# .SYNOPSIS Configure Avi HTTPPolicySet Object API .EXAMPLE Get-AviRestHttppolicyset | Remove-AviRestHttppolicyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Httppolicyset')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Httppolicyset', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestHttppolicyset')]$Httppolicyset, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Httppolicyset') { $uuid = $Httppolicyset.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/httppolicyset/${uuid}" } if ($pscmdlet.ShouldProcess("$($Httppolicyset.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestIcapprofile { <# .SYNOPSIS Configure Avi IcapProfile Object API .EXAMPLE Get-AviRestIcapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'i', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/icapprofile$Uuid" : '/api/icapprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestIcapprofile } } Function Set-AVIRestIcapprofile { <# .SYNOPSIS Configure Avi IcapProfile Object API .EXAMPLE $object = Get-AviRestIcapprofile $object.name = 'New name' Set-AviRestIcapprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIcapprofile')]$Icapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Icapprofile.uuid $global:body = ConvertTo-JSON $Icapprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/icapprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Icapprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIcapprofile } } } Function New-AVIRestIcapprofile { <# .SYNOPSIS Configure Avi IcapProfile Object API .EXAMPLE New-AviRestIcapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIcapprofile')]$Icapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/icapprofile" Body = ConvertTo-JSON $Icapprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Icapprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIcapprofile } } } Function New-AVIRestIcapprofileObject { <# .SYNOPSIS Configure Avi IcapProfile Object API .EXAMPLE New-AviRestIcapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIcapprofile') $result } } Function Remove-AVIRestIcapprofile { <# .SYNOPSIS Configure Avi IcapProfile Object API .EXAMPLE Get-AviRestIcapprofile | Remove-AviRestIcapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Icapprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Icapprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIcapprofile')]$Icapprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Icapprofile') { $uuid = $Icapprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/icapprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Icapprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestImage { <# .SYNOPSIS Configure Avi Image Object API .EXAMPLE Get-AviRestImage .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'i', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/image$Uuid" : '/api/image' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestImage } } Function Set-AVIRestImage { <# .SYNOPSIS Configure Avi Image Object API .EXAMPLE $object = Get-AviRestImage $object.name = 'New name' Set-AviRestImage $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestImage')]$Image ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Image.uuid $global:body = ConvertTo-JSON $Image -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/image/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Image.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestImage } } } Function New-AVIRestImage { <# .SYNOPSIS Configure Avi Image Object API .EXAMPLE New-AviRestImage .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestImage')]$Image ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/image" Body = ConvertTo-JSON $Image -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Image.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestImage } } } Function New-AVIRestImageObject { <# .SYNOPSIS Configure Avi Image Object API .EXAMPLE New-AviRestImage .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestImage') $result } } Function Remove-AVIRestImage { <# .SYNOPSIS Configure Avi Image Object API .EXAMPLE Get-AviRestImage | Remove-AviRestImage .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Image')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Image', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestImage')]$Image, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Image') { $uuid = $Image.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/image/${uuid}" } if ($pscmdlet.ShouldProcess("$($Image.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestInventoryfaultconfig { <# .SYNOPSIS Configure Avi InventoryFaultConfig Object API .EXAMPLE Get-AviRestInventoryfaultconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'i', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/inventoryfaultconfig$Uuid" : '/api/inventoryfaultconfig' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestInventoryfaultconfig } } Function Set-AVIRestInventoryfaultconfig { <# .SYNOPSIS Configure Avi InventoryFaultConfig Object API .EXAMPLE $object = Get-AviRestInventoryfaultconfig $object.name = 'New name' Set-AviRestInventoryfaultconfig $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestInventoryfaultconfig')]$Inventoryfaultconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Inventoryfaultconfig.uuid $global:body = ConvertTo-JSON $Inventoryfaultconfig -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/inventoryfaultconfig/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Inventoryfaultconfig.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestInventoryfaultconfig } } } Function New-AVIRestInventoryfaultconfig { <# .SYNOPSIS Configure Avi InventoryFaultConfig Object API .EXAMPLE New-AviRestInventoryfaultconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestInventoryfaultconfig')]$Inventoryfaultconfig ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/inventoryfaultconfig" Body = ConvertTo-JSON $Inventoryfaultconfig -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Inventoryfaultconfig.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestInventoryfaultconfig } } } Function New-AVIRestInventoryfaultconfigObject { <# .SYNOPSIS Configure Avi InventoryFaultConfig Object API .EXAMPLE New-AviRestInventoryfaultconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestInventoryfaultconfig') $result } } Function Remove-AVIRestInventoryfaultconfig { <# .SYNOPSIS Configure Avi InventoryFaultConfig Object API .EXAMPLE Get-AviRestInventoryfaultconfig | Remove-AviRestInventoryfaultconfig .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Inventoryfaultconfig')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Inventoryfaultconfig', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestInventoryfaultconfig')]$Inventoryfaultconfig, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Inventoryfaultconfig') { $uuid = $Inventoryfaultconfig.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/inventoryfaultconfig/${uuid}" } if ($pscmdlet.ShouldProcess("$($Inventoryfaultconfig.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestIpaddrgroup { <# .SYNOPSIS Configure Avi IpAddrGroup Object API .EXAMPLE Get-AviRestIpaddrgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'i', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/ipaddrgroup$Uuid" : '/api/ipaddrgroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestIpaddrgroup } } Function Set-AVIRestIpaddrgroup { <# .SYNOPSIS Configure Avi IpAddrGroup Object API .EXAMPLE $object = Get-AviRestIpaddrgroup $object.name = 'New name' Set-AviRestIpaddrgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpaddrgroup')]$Ipaddrgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ipaddrgroup.uuid $global:body = ConvertTo-JSON $Ipaddrgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ipaddrgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ipaddrgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIpaddrgroup } } } Function New-AVIRestIpaddrgroup { <# .SYNOPSIS Configure Avi IpAddrGroup Object API .EXAMPLE New-AviRestIpaddrgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpaddrgroup')]$Ipaddrgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ipaddrgroup" Body = ConvertTo-JSON $Ipaddrgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ipaddrgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIpaddrgroup } } } Function New-AVIRestIpaddrgroupObject { <# .SYNOPSIS Configure Avi IpAddrGroup Object API .EXAMPLE New-AviRestIpaddrgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIpaddrgroup') $result } } Function Remove-AVIRestIpaddrgroup { <# .SYNOPSIS Configure Avi IpAddrGroup Object API .EXAMPLE Get-AviRestIpaddrgroup | Remove-AviRestIpaddrgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ipaddrgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ipaddrgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpaddrgroup')]$Ipaddrgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ipaddrgroup') { $uuid = $Ipaddrgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ipaddrgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ipaddrgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestIpamdnsproviderprofile { <# .SYNOPSIS Configure Avi IpamDnsProviderProfile Object API .EXAMPLE Get-AviRestIpamdnsproviderprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'i', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/ipamdnsproviderprofile$Uuid" : '/api/ipamdnsproviderprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestIpamdnsproviderprofile } } Function Set-AVIRestIpamdnsproviderprofile { <# .SYNOPSIS Configure Avi IpamDnsProviderProfile Object API .EXAMPLE $object = Get-AviRestIpamdnsproviderprofile $object.name = 'New name' Set-AviRestIpamdnsproviderprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpamdnsproviderprofile')]$Ipamdnsproviderprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ipamdnsproviderprofile.uuid $global:body = ConvertTo-JSON $Ipamdnsproviderprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ipamdnsproviderprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ipamdnsproviderprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIpamdnsproviderprofile } } } Function New-AVIRestIpamdnsproviderprofile { <# .SYNOPSIS Configure Avi IpamDnsProviderProfile Object API .EXAMPLE New-AviRestIpamdnsproviderprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpamdnsproviderprofile')]$Ipamdnsproviderprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ipamdnsproviderprofile" Body = ConvertTo-JSON $Ipamdnsproviderprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ipamdnsproviderprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIpamdnsproviderprofile } } } Function New-AVIRestIpamdnsproviderprofileObject { <# .SYNOPSIS Configure Avi IpamDnsProviderProfile Object API .EXAMPLE New-AviRestIpamdnsproviderprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIpamdnsproviderprofile') $result } } Function Remove-AVIRestIpamdnsproviderprofile { <# .SYNOPSIS Configure Avi IpamDnsProviderProfile Object API .EXAMPLE Get-AviRestIpamdnsproviderprofile | Remove-AviRestIpamdnsproviderprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ipamdnsproviderprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ipamdnsproviderprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpamdnsproviderprofile')]$Ipamdnsproviderprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ipamdnsproviderprofile') { $uuid = $Ipamdnsproviderprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ipamdnsproviderprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ipamdnsproviderprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestIpreputationdb { <# .SYNOPSIS Configure Avi IPReputationDB Object API .EXAMPLE Get-AviRestIpreputationdb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/internal', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/ipreputationdb$Uuid" : '/api/ipreputationdb' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestIpreputationdb } } Function Set-AVIRestIpreputationdb { <# .SYNOPSIS Configure Avi IPReputationDB Object API .EXAMPLE $object = Get-AviRestIpreputationdb $object.name = 'New name' Set-AviRestIpreputationdb $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpreputationdb')]$Ipreputationdb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ipreputationdb.uuid $global:body = ConvertTo-JSON $Ipreputationdb -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ipreputationdb/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ipreputationdb.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestIpreputationdb } } } Function New-AVIRestIpreputationdb { <# .SYNOPSIS Configure Avi IPReputationDB Object API .EXAMPLE New-AviRestIpreputationdb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpreputationdb')]$Ipreputationdb ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ipreputationdb" Body = ConvertTo-JSON $Ipreputationdb -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ipreputationdb.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestIpreputationdb } } } Function New-AVIRestIpreputationdbObject { <# .SYNOPSIS Configure Avi IPReputationDB Object API .EXAMPLE New-AviRestIpreputationdb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestIpreputationdb') $result } } Function Remove-AVIRestIpreputationdb { <# .SYNOPSIS Configure Avi IPReputationDB Object API .EXAMPLE Get-AviRestIpreputationdb | Remove-AviRestIpreputationdb .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ipreputationdb')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ipreputationdb', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestIpreputationdb')]$Ipreputationdb, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ipreputationdb') { $uuid = $Ipreputationdb.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ipreputationdb/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ipreputationdb.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestJobs { <# .SYNOPSIS Configure Avi JobEntry Object API .EXAMPLE Get-AviRestJobs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'j', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/jobs$Uuid" : '/api/jobs' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestJobs } } Function Set-AVIRestJobs { <# .SYNOPSIS Configure Avi JobEntry Object API .EXAMPLE $object = Get-AviRestJobs $object.name = 'New name' Set-AviRestJobs $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJobs')]$Jobs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Jobs.uuid $global:body = ConvertTo-JSON $Jobs -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/jobs/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Jobs.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestJobs } } } Function New-AVIRestJobs { <# .SYNOPSIS Configure Avi JobEntry Object API .EXAMPLE New-AviRestJobs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJobs')]$Jobs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/jobs" Body = ConvertTo-JSON $Jobs -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Jobs.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestJobs } } } Function Remove-AVIRestJobs { <# .SYNOPSIS Configure Avi JobEntry Object API .EXAMPLE Get-AviRestJobs | Remove-AviRestJobs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Jobs')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Jobs', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJobs')]$Jobs, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Jobs') { $uuid = $Jobs.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/jobs/${uuid}" } if ($pscmdlet.ShouldProcess("$($Jobs.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestJwtprofile { <# .SYNOPSIS Configure Avi JWTProfile Object API .EXAMPLE Get-AviRestJwtprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'federated_info', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/jwtprofile$Uuid" : '/api/jwtprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestJwtprofile } } Function Set-AVIRestJwtprofile { <# .SYNOPSIS Configure Avi JWTProfile Object API .EXAMPLE $object = Get-AviRestJwtprofile $object.name = 'New name' Set-AviRestJwtprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtprofile')]$Jwtprofile ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Jwtprofile.uuid $global:body = ConvertTo-JSON $Jwtprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/jwtprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Jwtprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestJwtprofile } } } Function New-AVIRestJwtprofile { <# .SYNOPSIS Configure Avi JWTProfile Object API .EXAMPLE New-AviRestJwtprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtprofile')]$Jwtprofile ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/jwtprofile" Body = ConvertTo-JSON $Jwtprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Jwtprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestJwtprofile } } } Function New-AVIRestJwtprofileObject { <# .SYNOPSIS Configure Avi JWTProfile Object API .EXAMPLE New-AviRestJwtprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestJwtprofile') $result } } Function Remove-AVIRestJwtprofile { <# .SYNOPSIS Configure Avi JWTProfile Object API .EXAMPLE Get-AviRestJwtprofile | Remove-AviRestJwtprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Jwtprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Jwtprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtprofile')]$Jwtprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '21.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Jwtprofile') { $uuid = $Jwtprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/jwtprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Jwtprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestJwtserverprofile { <# .SYNOPSIS Configure Avi JWTServerProfile Object API .EXAMPLE Get-AviRestJwtserverprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'federated_info', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/jwtserverprofile$Uuid" : '/api/jwtserverprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestJwtserverprofile } } Function Set-AVIRestJwtserverprofile { <# .SYNOPSIS Configure Avi JWTServerProfile Object API .EXAMPLE $object = Get-AviRestJwtserverprofile $object.name = 'New name' Set-AviRestJwtserverprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtserverprofile')]$Jwtserverprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Jwtserverprofile.uuid $global:body = ConvertTo-JSON $Jwtserverprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/jwtserverprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Jwtserverprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestJwtserverprofile } } } Function New-AVIRestJwtserverprofile { <# .SYNOPSIS Configure Avi JWTServerProfile Object API .EXAMPLE New-AviRestJwtserverprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtserverprofile')]$Jwtserverprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/jwtserverprofile" Body = ConvertTo-JSON $Jwtserverprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Jwtserverprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestJwtserverprofile } } } Function New-AVIRestJwtserverprofileObject { <# .SYNOPSIS Configure Avi JWTServerProfile Object API .EXAMPLE New-AviRestJwtserverprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestJwtserverprofile') $result } } Function Remove-AVIRestJwtserverprofile { <# .SYNOPSIS Configure Avi JWTServerProfile Object API .EXAMPLE Get-AviRestJwtserverprofile | Remove-AviRestJwtserverprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Jwtserverprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Jwtserverprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestJwtserverprofile')]$Jwtserverprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Jwtserverprofile') { $uuid = $Jwtserverprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/jwtserverprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Jwtserverprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestL4policyset { <# .SYNOPSIS Configure Avi L4PolicySet Object API .EXAMPLE Get-AviRestL4policyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'l', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/l4policyset$Uuid" : '/api/l4policyset' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestL4policyset } } Function Set-AVIRestL4policyset { <# .SYNOPSIS Configure Avi L4PolicySet Object API .EXAMPLE $object = Get-AviRestL4policyset $object.name = 'New name' Set-AviRestL4policyset $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestL4policyset')]$L4policyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $L4policyset.uuid $global:body = ConvertTo-JSON $L4policyset -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/l4policyset/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($L4policyset.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestL4policyset } } } Function New-AVIRestL4policyset { <# .SYNOPSIS Configure Avi L4PolicySet Object API .EXAMPLE New-AviRestL4policyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestL4policyset')]$L4policyset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/l4policyset" Body = ConvertTo-JSON $L4policyset -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($L4policyset.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestL4policyset } } } Function New-AVIRestL4policysetObject { <# .SYNOPSIS Configure Avi L4PolicySet Object API .EXAMPLE New-AviRestL4policyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestL4policyset') $result } } Function Remove-AVIRestL4policyset { <# .SYNOPSIS Configure Avi L4PolicySet Object API .EXAMPLE Get-AviRestL4policyset | Remove-AviRestL4policyset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'L4policyset')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'L4policyset', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestL4policyset')]$L4policyset, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'L4policyset') { $uuid = $L4policyset.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/l4policyset/${uuid}" } if ($pscmdlet.ShouldProcess("$($L4policyset.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestLabelgroup { <# .SYNOPSIS Configure Avi LabelGroup Object API .EXAMPLE Get-AviRestLabelgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'l', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/labelgroup$Uuid" : '/api/labelgroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestLabelgroup } } Function Set-AVIRestLabelgroup { <# .SYNOPSIS Configure Avi LabelGroup Object API .EXAMPLE $object = Get-AviRestLabelgroup $object.name = 'New name' Set-AviRestLabelgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLabelgroup')]$Labelgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Labelgroup.uuid $global:body = ConvertTo-JSON $Labelgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/labelgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Labelgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLabelgroup } } } Function New-AVIRestLabelgroup { <# .SYNOPSIS Configure Avi LabelGroup Object API .EXAMPLE New-AviRestLabelgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLabelgroup')]$Labelgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/labelgroup" Body = ConvertTo-JSON $Labelgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Labelgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLabelgroup } } } Function New-AVIRestLabelgroupObject { <# .SYNOPSIS Configure Avi LabelGroup Object API .EXAMPLE New-AviRestLabelgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLabelgroup') $result } } Function Remove-AVIRestLabelgroup { <# .SYNOPSIS Configure Avi LabelGroup Object API .EXAMPLE Get-AviRestLabelgroup | Remove-AviRestLabelgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Labelgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Labelgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLabelgroup')]$Labelgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Labelgroup') { $uuid = $Labelgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/labelgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Labelgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestLicensingLedgerDetails { <# .SYNOPSIS Configure Avi LicenseLedgerDetails Object API .EXAMPLE Get-AviRestLicensingLedgerDetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'l', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/licensing/ledger/details$Uuid" : '/api/licensing/ledger/details' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestLicensingLedgerDetails } } Function Set-AVIRestLicensingLedgerDetails { <# .SYNOPSIS Configure Avi LicenseLedgerDetails Object API .EXAMPLE $object = Get-AviRestLicensingLedgerDetails $object.name = 'New name' Set-AviRestLicensingLedgerDetails $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingLedgerDetails')]$LicensingLedgerDetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $LicensingLedgerDetails.uuid $global:body = ConvertTo-JSON $LicensingLedgerDetails -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/licensing/ledger/details/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($LicensingLedgerDetails.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingLedgerDetails } } } Function New-AVIRestLicensingLedgerDetails { <# .SYNOPSIS Configure Avi LicenseLedgerDetails Object API .EXAMPLE New-AviRestLicensingLedgerDetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingLedgerDetails')]$LicensingLedgerDetails ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/licensing/ledger/details" Body = ConvertTo-JSON $LicensingLedgerDetails -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($LicensingLedgerDetails.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingLedgerDetails } } } Function New-AVIRestLicensingLedgerDetailsObject { <# .SYNOPSIS Configure Avi LicenseLedgerDetails Object API .EXAMPLE New-AviRestLicensingLedgerDetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLicensingLedgerDetails') $result } } Function Remove-AVIRestLicensingLedgerDetails { <# .SYNOPSIS Configure Avi LicenseLedgerDetails Object API .EXAMPLE Get-AviRestLicensingLedgerDetails | Remove-AviRestLicensingLedgerDetails .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'LicensingLedgerDetails')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'LicensingLedgerDetails', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingLedgerDetails')]$LicensingLedgerDetails, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'LicensingLedgerDetails') { $uuid = $LicensingLedgerDetails.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/licensing/ledger/details/${uuid}" } if ($pscmdlet.ShouldProcess("$($LicensingLedgerDetails.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestLicensingStatus { <# .SYNOPSIS Configure Avi LicenseStatus Object API .EXAMPLE Get-AviRestLicensingStatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'l', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/licensing/status$Uuid" : '/api/licensing/status' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestLicensingStatus } } Function Set-AVIRestLicensingStatus { <# .SYNOPSIS Configure Avi LicenseStatus Object API .EXAMPLE $object = Get-AviRestLicensingStatus $object.name = 'New name' Set-AviRestLicensingStatus $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingStatus')]$LicensingStatus ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $LicensingStatus.uuid $global:body = ConvertTo-JSON $LicensingStatus -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/licensing/status/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($LicensingStatus.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingStatus } } } Function New-AVIRestLicensingStatus { <# .SYNOPSIS Configure Avi LicenseStatus Object API .EXAMPLE New-AviRestLicensingStatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingStatus')]$LicensingStatus ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/licensing/status" Body = ConvertTo-JSON $LicensingStatus -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($LicensingStatus.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLicensingStatus } } } Function New-AVIRestLicensingStatusObject { <# .SYNOPSIS Configure Avi LicenseStatus Object API .EXAMPLE New-AviRestLicensingStatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLicensingStatus') $result } } Function Remove-AVIRestLicensingStatus { <# .SYNOPSIS Configure Avi LicenseStatus Object API .EXAMPLE Get-AviRestLicensingStatus | Remove-AviRestLicensingStatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'LicensingStatus')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'LicensingStatus', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLicensingStatus')]$LicensingStatus, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'LicensingStatus') { $uuid = $LicensingStatus.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/licensing/status/${uuid}" } if ($pscmdlet.ShouldProcess("$($LicensingStatus.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestLogcontroller { <# .SYNOPSIS Configure Avi LogControllerMapping Object API .EXAMPLE Get-AviRestLogcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'l', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/logcontroller$Uuid" : '/api/logcontroller' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestLogcontroller } } Function Set-AVIRestLogcontroller { <# .SYNOPSIS Configure Avi LogControllerMapping Object API .EXAMPLE $object = Get-AviRestLogcontroller $object.name = 'New name' Set-AviRestLogcontroller $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLogcontroller')]$Logcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Logcontroller.uuid $global:body = ConvertTo-JSON $Logcontroller -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/logcontroller/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Logcontroller.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestLogcontroller } } } Function New-AVIRestLogcontroller { <# .SYNOPSIS Configure Avi LogControllerMapping Object API .EXAMPLE New-AviRestLogcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLogcontroller')]$Logcontroller ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/logcontroller" Body = ConvertTo-JSON $Logcontroller -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Logcontroller.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestLogcontroller } } } Function New-AVIRestLogcontrollerObject { <# .SYNOPSIS Configure Avi LogControllerMapping Object API .EXAMPLE New-AviRestLogcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestLogcontroller') $result } } Function Remove-AVIRestLogcontroller { <# .SYNOPSIS Configure Avi LogControllerMapping Object API .EXAMPLE Get-AviRestLogcontroller | Remove-AviRestLogcontroller .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Logcontroller')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Logcontroller', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestLogcontroller')]$Logcontroller, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Logcontroller') { $uuid = $Logcontroller.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/logcontroller/${uuid}" } if ($pscmdlet.ShouldProcess("$($Logcontroller.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestMemorybalancernotifier { <# .SYNOPSIS Configure Avi MemoryBalancerRequest Object API .EXAMPLE Get-AviRestMemorybalancernotifier .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'm', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/memorybalancernotifier$Uuid" : '/api/memorybalancernotifier' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestMemorybalancernotifier } } Function Set-AVIRestMemorybalancernotifier { <# .SYNOPSIS Configure Avi MemoryBalancerRequest Object API .EXAMPLE $object = Get-AviRestMemorybalancernotifier $object.name = 'New name' Set-AviRestMemorybalancernotifier $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMemorybalancernotifier')]$Memorybalancernotifier ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Memorybalancernotifier.uuid $global:body = ConvertTo-JSON $Memorybalancernotifier -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/memorybalancernotifier/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Memorybalancernotifier.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestMemorybalancernotifier } } } Function New-AVIRestMemorybalancernotifier { <# .SYNOPSIS Configure Avi MemoryBalancerRequest Object API .EXAMPLE New-AviRestMemorybalancernotifier .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMemorybalancernotifier')]$Memorybalancernotifier ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/memorybalancernotifier" Body = ConvertTo-JSON $Memorybalancernotifier -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Memorybalancernotifier.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestMemorybalancernotifier } } } Function Remove-AVIRestMemorybalancernotifier { <# .SYNOPSIS Configure Avi MemoryBalancerRequest Object API .EXAMPLE Get-AviRestMemorybalancernotifier | Remove-AviRestMemorybalancernotifier .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Memorybalancernotifier')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Memorybalancernotifier', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMemorybalancernotifier')]$Memorybalancernotifier, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Memorybalancernotifier') { $uuid = $Memorybalancernotifier.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/memorybalancernotifier/${uuid}" } if ($pscmdlet.ShouldProcess("$($Memorybalancernotifier.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestAnalyticsMetricsController { <# .SYNOPSIS Configure Avi Object API .EXAMPLE Get-AviRestAnalyticsMetricsController .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/analytics/metrics/pool/{uuid},/analytics/metrics/serviceengine/{uuid},/analytics/metrics/virtualservice/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/analytics/metrics/controller/$Uuid" : '/api/analytics/metrics/controller/' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestAnalyticsMetricsController } } Function New-AVIRestAnalyticsMetricsCollection { <# .SYNOPSIS Configure Avi Object API .EXAMPLE New-AviRestAnalyticsMetricsCollection .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestAnalyticsMetricsCollection')]$AnalyticsMetricsCollection ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/analytics/metrics/collection/" Body = ConvertTo-JSON $AnalyticsMetricsCollection -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($AnalyticsMetricsCollection.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestAnalyticsMetricsCollection } } } Function New-AVIRestAnalyticsMetricsCollectionObject { <# .SYNOPSIS Configure Avi Object API .EXAMPLE New-AviRestAnalyticsMetricsCollection .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestAnalyticsMetricsCollection') $result } } Function Get-AVIRestMicroservice { <# .SYNOPSIS Configure Avi MicroService Object API .EXAMPLE Get-AviRestMicroservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/internal,runtime/detail', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/microservice$Uuid" : '/api/microservice' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestMicroservice } } Function Set-AVIRestMicroservice { <# .SYNOPSIS Configure Avi MicroService Object API .EXAMPLE $object = Get-AviRestMicroservice $object.name = 'New name' Set-AviRestMicroservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservice')]$Microservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Microservice.uuid $global:body = ConvertTo-JSON $Microservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/microservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Microservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservice } } } Function New-AVIRestMicroservice { <# .SYNOPSIS Configure Avi MicroService Object API .EXAMPLE New-AviRestMicroservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservice')]$Microservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/microservice" Body = ConvertTo-JSON $Microservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Microservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservice } } } Function New-AVIRestMicroserviceObject { <# .SYNOPSIS Configure Avi MicroService Object API .EXAMPLE New-AviRestMicroservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestMicroservice') $result } } Function Remove-AVIRestMicroservice { <# .SYNOPSIS Configure Avi MicroService Object API .EXAMPLE Get-AviRestMicroservice | Remove-AviRestMicroservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Microservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Microservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservice')]$Microservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Microservice') { $uuid = $Microservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/microservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Microservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestMicroservicegroup { <# .SYNOPSIS Configure Avi MicroServiceGroup Object API .EXAMPLE Get-AviRestMicroservicegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/detail', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/microservicegroup$Uuid" : '/api/microservicegroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestMicroservicegroup } } Function Set-AVIRestMicroservicegroup { <# .SYNOPSIS Configure Avi MicroServiceGroup Object API .EXAMPLE $object = Get-AviRestMicroservicegroup $object.name = 'New name' Set-AviRestMicroservicegroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservicegroup')]$Microservicegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Microservicegroup.uuid $global:body = ConvertTo-JSON $Microservicegroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/microservicegroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Microservicegroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservicegroup } } } Function New-AVIRestMicroservicegroup { <# .SYNOPSIS Configure Avi MicroServiceGroup Object API .EXAMPLE New-AviRestMicroservicegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservicegroup')]$Microservicegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/microservicegroup" Body = ConvertTo-JSON $Microservicegroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Microservicegroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestMicroservicegroup } } } Function New-AVIRestMicroservicegroupObject { <# .SYNOPSIS Configure Avi MicroServiceGroup Object API .EXAMPLE New-AviRestMicroservicegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestMicroservicegroup') $result } } Function Remove-AVIRestMicroservicegroup { <# .SYNOPSIS Configure Avi MicroServiceGroup Object API .EXAMPLE Get-AviRestMicroservicegroup | Remove-AviRestMicroservicegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Microservicegroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Microservicegroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestMicroservicegroup')]$Microservicegroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Microservicegroup') { $uuid = $Microservicegroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/microservicegroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Microservicegroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNatpolicy { <# .SYNOPSIS Configure Avi NatPolicy Object API .EXAMPLE Get-AviRestNatpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'n', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/natpolicy$Uuid" : '/api/natpolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNatpolicy } } Function Set-AVIRestNatpolicy { <# .SYNOPSIS Configure Avi NatPolicy Object API .EXAMPLE $object = Get-AviRestNatpolicy $object.name = 'New name' Set-AviRestNatpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNatpolicy')]$Natpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Natpolicy.uuid $global:body = ConvertTo-JSON $Natpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/natpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Natpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNatpolicy } } } Function New-AVIRestNatpolicy { <# .SYNOPSIS Configure Avi NatPolicy Object API .EXAMPLE New-AviRestNatpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNatpolicy')]$Natpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/natpolicy" Body = ConvertTo-JSON $Natpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Natpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNatpolicy } } } Function New-AVIRestNatpolicyObject { <# .SYNOPSIS Configure Avi NatPolicy Object API .EXAMPLE New-AviRestNatpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNatpolicy') $result } } Function Remove-AVIRestNatpolicy { <# .SYNOPSIS Configure Avi NatPolicy Object API .EXAMPLE Get-AviRestNatpolicy | Remove-AviRestNatpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Natpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Natpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNatpolicy')]$Natpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Natpolicy') { $uuid = $Natpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/natpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Natpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNetwork { <# .SYNOPSIS Configure Avi Network Object API .EXAMPLE Get-AviRestNetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'n', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/network$Uuid" : '/api/network' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNetwork } } Function Set-AVIRestNetwork { <# .SYNOPSIS Configure Avi Network Object API .EXAMPLE $object = Get-AviRestNetwork $object.name = 'New name' Set-AviRestNetwork $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetwork')]$Network ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Network.uuid $global:body = ConvertTo-JSON $Network -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/network/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Network.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetwork } } } Function New-AVIRestNetwork { <# .SYNOPSIS Configure Avi Network Object API .EXAMPLE New-AviRestNetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetwork')]$Network ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/network" Body = ConvertTo-JSON $Network -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Network.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetwork } } } Function New-AVIRestNetworkObject { <# .SYNOPSIS Configure Avi Network Object API .EXAMPLE New-AviRestNetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetwork') $result } } Function Remove-AVIRestNetwork { <# .SYNOPSIS Configure Avi Network Object API .EXAMPLE Get-AviRestNetwork | Remove-AviRestNetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Network')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Network', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetwork')]$Network, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Network') { $uuid = $Network.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/network/${uuid}" } if ($pscmdlet.ShouldProcess("$($Network.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNetworkInventory { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE Get-AviRestNetworkInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/networkruntime/{uuid},/vimgrnwruntime/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/network-inventory$Uuid" : '/api/network-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNetworkInventory } } Function Set-AVIRestNetworkInventory { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE $object = Get-AviRestNetworkInventory $object.name = 'New name' Set-AviRestNetworkInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkInventory')]$NetworkInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $NetworkInventory.uuid $global:body = ConvertTo-JSON $NetworkInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/network-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($NetworkInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkInventory } } } Function Set-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE $object = Get-AviRestNetworkruntime $object.name = 'New name' Set-AviRestNetworkruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networkruntime.uuid $global:body = ConvertTo-JSON $Networkruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networkruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkruntime } } } Function Set-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE $object = Get-AviRestVimgrnwruntime $object.name = 'New name' Set-AviRestVimgrnwruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrnwruntime.uuid $global:body = ConvertTo-JSON $Vimgrnwruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrnwruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrnwruntime } } } Function New-AVIRestNetworkInventory { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE New-AviRestNetworkInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkInventory')]$NetworkInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/network-inventory" Body = ConvertTo-JSON $NetworkInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($NetworkInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkInventory } } } Function New-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE New-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networkruntime" Body = ConvertTo-JSON $Networkruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkruntime } } } Function New-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE New-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrnwruntime" Body = ConvertTo-JSON $Vimgrnwruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrnwruntime } } } Function New-AVIRestNetworkInventoryObject { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE New-AviRestNetworkInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkInventory') $result } } Function New-AVIRestNetworkruntimeObject { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE New-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkruntime') $result } } Function New-AVIRestVimgrnwruntimeObject { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE New-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrnwruntime') $result } } Function Remove-AVIRestNetworkInventory { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE Get-AviRestNetworkInventory | Remove-AviRestNetworkInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'NetworkInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'NetworkInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkInventory')]$NetworkInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'NetworkInventory') { $uuid = $NetworkInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/network-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($NetworkInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE Get-AviRestNetworkruntime | Remove-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networkruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networkruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networkruntime') { $uuid = $Networkruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networkruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi NetworkInventory Object API .EXAMPLE Get-AviRestVimgrnwruntime | Remove-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrnwruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrnwruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrnwruntime') { $uuid = $Vimgrnwruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrnwruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNetworkprofile { <# .SYNOPSIS Configure Avi NetworkProfile Object API .EXAMPLE Get-AviRestNetworkprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/internal', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/networkprofile$Uuid" : '/api/networkprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNetworkprofile } } Function Set-AVIRestNetworkprofile { <# .SYNOPSIS Configure Avi NetworkProfile Object API .EXAMPLE $object = Get-AviRestNetworkprofile $object.name = 'New name' Set-AviRestNetworkprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkprofile')]$Networkprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networkprofile.uuid $global:body = ConvertTo-JSON $Networkprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networkprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networkprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkprofile } } } Function New-AVIRestNetworkprofile { <# .SYNOPSIS Configure Avi NetworkProfile Object API .EXAMPLE New-AviRestNetworkprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkprofile')]$Networkprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networkprofile" Body = ConvertTo-JSON $Networkprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networkprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkprofile } } } Function New-AVIRestNetworkprofileObject { <# .SYNOPSIS Configure Avi NetworkProfile Object API .EXAMPLE New-AviRestNetworkprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkprofile') $result } } Function Remove-AVIRestNetworkprofile { <# .SYNOPSIS Configure Avi NetworkProfile Object API .EXAMPLE Get-AviRestNetworkprofile | Remove-AviRestNetworkprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networkprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networkprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkprofile')]$Networkprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networkprofile') { $uuid = $Networkprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networkprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networkprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi NetworkRuntime Object API .EXAMPLE Get-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'n', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/networkruntime$Uuid" : '/api/networkruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNetworkruntime } } Function Set-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi NetworkRuntime Object API .EXAMPLE $object = Get-AviRestNetworkruntime $object.name = 'New name' Set-AviRestNetworkruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networkruntime.uuid $global:body = ConvertTo-JSON $Networkruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networkruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkruntime } } } Function New-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi NetworkRuntime Object API .EXAMPLE New-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networkruntime" Body = ConvertTo-JSON $Networkruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkruntime } } } Function New-AVIRestNetworkruntimeObject { <# .SYNOPSIS Configure Avi NetworkRuntime Object API .EXAMPLE New-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkruntime') $result } } Function Remove-AVIRestNetworkruntime { <# .SYNOPSIS Configure Avi NetworkRuntime Object API .EXAMPLE Get-AviRestNetworkruntime | Remove-AviRestNetworkruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networkruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networkruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkruntime')]$Networkruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networkruntime') { $uuid = $Networkruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networkruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networkruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi NetworkSecurityPolicy Object API .EXAMPLE Get-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'n', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/networksecuritypolicy$Uuid" : '/api/networksecuritypolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNetworksecuritypolicy } } Function Set-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi NetworkSecurityPolicy Object API .EXAMPLE $object = Get-AviRestNetworksecuritypolicy $object.name = 'New name' Set-AviRestNetworksecuritypolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworksecuritypolicy')]$Networksecuritypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networksecuritypolicy.uuid $global:body = ConvertTo-JSON $Networksecuritypolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networksecuritypolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networksecuritypolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworksecuritypolicy } } } Function New-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi NetworkSecurityPolicy Object API .EXAMPLE New-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworksecuritypolicy')]$Networksecuritypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networksecuritypolicy" Body = ConvertTo-JSON $Networksecuritypolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networksecuritypolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworksecuritypolicy } } } Function New-AVIRestNetworksecuritypolicyObject { <# .SYNOPSIS Configure Avi NetworkSecurityPolicy Object API .EXAMPLE New-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworksecuritypolicy') $result } } Function Remove-AVIRestNetworksecuritypolicy { <# .SYNOPSIS Configure Avi NetworkSecurityPolicy Object API .EXAMPLE Get-AviRestNetworksecuritypolicy | Remove-AviRestNetworksecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networksecuritypolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networksecuritypolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworksecuritypolicy')]$Networksecuritypolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networksecuritypolicy') { $uuid = $Networksecuritypolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networksecuritypolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networksecuritypolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNetworkservice { <# .SYNOPSIS Configure Avi NetworkService Object API .EXAMPLE Get-AviRestNetworkservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'n', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/networkservice$Uuid" : '/api/networkservice' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNetworkservice } } Function Set-AVIRestNetworkservice { <# .SYNOPSIS Configure Avi NetworkService Object API .EXAMPLE $object = Get-AviRestNetworkservice $object.name = 'New name' Set-AviRestNetworkservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkservice')]$Networkservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Networkservice.uuid $global:body = ConvertTo-JSON $Networkservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/networkservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Networkservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkservice } } } Function New-AVIRestNetworkservice { <# .SYNOPSIS Configure Avi NetworkService Object API .EXAMPLE New-AviRestNetworkservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkservice')]$Networkservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/networkservice" Body = ConvertTo-JSON $Networkservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Networkservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNetworkservice } } } Function New-AVIRestNetworkserviceObject { <# .SYNOPSIS Configure Avi NetworkService Object API .EXAMPLE New-AviRestNetworkservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNetworkservice') $result } } Function Remove-AVIRestNetworkservice { <# .SYNOPSIS Configure Avi NetworkService Object API .EXAMPLE Get-AviRestNetworkservice | Remove-AviRestNetworkservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Networkservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Networkservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNetworkservice')]$Networkservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Networkservice') { $uuid = $Networkservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/networkservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Networkservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestNsxtsegmentruntime { <# .SYNOPSIS Configure Avi NsxtSegmentRuntime Object API .EXAMPLE Get-AviRestNsxtsegmentruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'n', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/nsxtsegmentruntime$Uuid" : '/api/nsxtsegmentruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestNsxtsegmentruntime } } Function Set-AVIRestNsxtsegmentruntime { <# .SYNOPSIS Configure Avi NsxtSegmentRuntime Object API .EXAMPLE $object = Get-AviRestNsxtsegmentruntime $object.name = 'New name' Set-AviRestNsxtsegmentruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNsxtsegmentruntime')]$Nsxtsegmentruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Nsxtsegmentruntime.uuid $global:body = ConvertTo-JSON $Nsxtsegmentruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/nsxtsegmentruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Nsxtsegmentruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestNsxtsegmentruntime } } } Function New-AVIRestNsxtsegmentruntime { <# .SYNOPSIS Configure Avi NsxtSegmentRuntime Object API .EXAMPLE New-AviRestNsxtsegmentruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNsxtsegmentruntime')]$Nsxtsegmentruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/nsxtsegmentruntime" Body = ConvertTo-JSON $Nsxtsegmentruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Nsxtsegmentruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestNsxtsegmentruntime } } } Function New-AVIRestNsxtsegmentruntimeObject { <# .SYNOPSIS Configure Avi NsxtSegmentRuntime Object API .EXAMPLE New-AviRestNsxtsegmentruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestNsxtsegmentruntime') $result } } Function Remove-AVIRestNsxtsegmentruntime { <# .SYNOPSIS Configure Avi NsxtSegmentRuntime Object API .EXAMPLE Get-AviRestNsxtsegmentruntime | Remove-AviRestNsxtsegmentruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Nsxtsegmentruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Nsxtsegmentruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestNsxtsegmentruntime')]$Nsxtsegmentruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Nsxtsegmentruntime') { $uuid = $Nsxtsegmentruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/nsxtsegmentruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Nsxtsegmentruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestObjectaccesspolicy { <# .SYNOPSIS Configure Avi ObjectAccessPolicy Object API .EXAMPLE Get-AviRestObjectaccesspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'o', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/objectaccesspolicy$Uuid" : '/api/objectaccesspolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestObjectaccesspolicy } } Function Set-AVIRestObjectaccesspolicy { <# .SYNOPSIS Configure Avi ObjectAccessPolicy Object API .EXAMPLE $object = Get-AviRestObjectaccesspolicy $object.name = 'New name' Set-AviRestObjectaccesspolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestObjectaccesspolicy')]$Objectaccesspolicy ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Objectaccesspolicy.uuid $global:body = ConvertTo-JSON $Objectaccesspolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/objectaccesspolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Objectaccesspolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestObjectaccesspolicy } } } Function New-AVIRestObjectaccesspolicy { <# .SYNOPSIS Configure Avi ObjectAccessPolicy Object API .EXAMPLE New-AviRestObjectaccesspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestObjectaccesspolicy')]$Objectaccesspolicy ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/objectaccesspolicy" Body = ConvertTo-JSON $Objectaccesspolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Objectaccesspolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestObjectaccesspolicy } } } Function New-AVIRestObjectaccesspolicyObject { <# .SYNOPSIS Configure Avi ObjectAccessPolicy Object API .EXAMPLE New-AviRestObjectaccesspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestObjectaccesspolicy') $result } } Function Remove-AVIRestObjectaccesspolicy { <# .SYNOPSIS Configure Avi ObjectAccessPolicy Object API .EXAMPLE Get-AviRestObjectaccesspolicy | Remove-AviRestObjectaccesspolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Objectaccesspolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Objectaccesspolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestObjectaccesspolicy')]$Objectaccesspolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '20.1.2' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Objectaccesspolicy') { $uuid = $Objectaccesspolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/objectaccesspolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Objectaccesspolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPingaccessagent { <# .SYNOPSIS Configure Avi PingAccessAgent Object API .EXAMPLE Get-AviRestPingaccessagent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'p', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/pingaccessagent$Uuid" : '/api/pingaccessagent' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPingaccessagent } } Function Set-AVIRestPingaccessagent { <# .SYNOPSIS Configure Avi PingAccessAgent Object API .EXAMPLE $object = Get-AviRestPingaccessagent $object.name = 'New name' Set-AviRestPingaccessagent $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPingaccessagent')]$Pingaccessagent ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Pingaccessagent.uuid $global:body = ConvertTo-JSON $Pingaccessagent -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pingaccessagent/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Pingaccessagent.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPingaccessagent } } } Function New-AVIRestPingaccessagent { <# .SYNOPSIS Configure Avi PingAccessAgent Object API .EXAMPLE New-AviRestPingaccessagent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPingaccessagent')]$Pingaccessagent ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pingaccessagent" Body = ConvertTo-JSON $Pingaccessagent -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Pingaccessagent.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPingaccessagent } } } Function New-AVIRestPingaccessagentObject { <# .SYNOPSIS Configure Avi PingAccessAgent Object API .EXAMPLE New-AviRestPingaccessagent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPingaccessagent') $result } } Function Remove-AVIRestPingaccessagent { <# .SYNOPSIS Configure Avi PingAccessAgent Object API .EXAMPLE Get-AviRestPingaccessagent | Remove-AviRestPingaccessagent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Pingaccessagent')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Pingaccessagent', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPingaccessagent')]$Pingaccessagent, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Pingaccessagent') { $uuid = $Pingaccessagent.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pingaccessagent/${uuid}" } if ($pscmdlet.ShouldProcess("$($Pingaccessagent.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPkiprofile { <# .SYNOPSIS Configure Avi PKIProfile Object API .EXAMPLE Get-AviRestPkiprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'federated_info', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/pkiprofile$Uuid" : '/api/pkiprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPkiprofile } } Function Set-AVIRestPkiprofile { <# .SYNOPSIS Configure Avi PKIProfile Object API .EXAMPLE $object = Get-AviRestPkiprofile $object.name = 'New name' Set-AviRestPkiprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPkiprofile')]$Pkiprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Pkiprofile.uuid $global:body = ConvertTo-JSON $Pkiprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pkiprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Pkiprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPkiprofile } } } Function New-AVIRestPkiprofile { <# .SYNOPSIS Configure Avi PKIProfile Object API .EXAMPLE New-AviRestPkiprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPkiprofile')]$Pkiprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pkiprofile" Body = ConvertTo-JSON $Pkiprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Pkiprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPkiprofile } } } Function New-AVIRestPkiprofileObject { <# .SYNOPSIS Configure Avi PKIProfile Object API .EXAMPLE New-AviRestPkiprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPkiprofile') $result } } Function Remove-AVIRestPkiprofile { <# .SYNOPSIS Configure Avi PKIProfile Object API .EXAMPLE Get-AviRestPkiprofile | Remove-AviRestPkiprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Pkiprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Pkiprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPkiprofile')]$Pkiprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Pkiprofile') { $uuid = $Pkiprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pkiprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Pkiprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPool { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE Get-AviRestPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime,runtime/server,runtime/detail,runtime/server/detail,runtime/internal,objsync,runtime/server/internal,runtime/debug,hmon,runtime/server/hmonstat,algo,persistence,connpool,httpcache,httpcachestats,httpcachestats/detail,vs,runtime/vs/service/server/map/kv,runtime/vs/service/server/map/table', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/pool$Uuid" : '/api/pool' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPool } } Function Set-AVIRestPool { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE $object = Get-AviRestPool $object.name = 'New name' Set-AviRestPool $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPool')]$Pool ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Pool.uuid $global:body = ConvertTo-JSON $Pool -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pool/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Pool.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPool } } } Function New-AVIRestPool { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE New-AviRestPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPool')]$Pool ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pool" Body = ConvertTo-JSON $Pool -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Pool.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPool } } } Function New-AVIRestPoolClear { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE New-AviRestPoolClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolClear')]$PoolClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pool/clear" Body = ConvertTo-JSON $PoolClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolClear } } } Function New-AVIRestPoolObject { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE New-AviRestPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPool') $result } } Function Invoke-AVIRestPoolScaleout { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE Invoke-AviRestPoolScaleout .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolScaleout')]$PoolScaleout ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolScaleout.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/scaleout" Body = ConvertTo-JSON $PoolScaleout -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolScaleout.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolScaleout } } } Function Invoke-AVIRestPoolScalein { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE Invoke-AviRestPoolScalein .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolScalein')]$PoolScalein ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolScalein.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/scalein" Body = ConvertTo-JSON $PoolScalein -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolScalein.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolScalein } } } Function Invoke-AVIRestPoolRuntimeStatsClear { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE Invoke-AviRestPoolRuntimeStatsClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolRuntimeStatsClear')]$PoolRuntimeStatsClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolRuntimeStatsClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/runtime/stats/clear" Body = ConvertTo-JSON $PoolRuntimeStatsClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolRuntimeStatsClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolRuntimeStatsClear } } } Function Invoke-AVIRestPoolRuntimeRequest_queueClear { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE Invoke-AviRestPoolRuntimeRequest_queueClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolRuntimeRequest_queueClear')]$PoolRuntimeRequest_queueClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolRuntimeRequest_queueClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/runtime/request_queue/clear" Body = ConvertTo-JSON $PoolRuntimeRequest_queueClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolRuntimeRequest_queueClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolRuntimeRequest_queueClear } } } Function Invoke-AVIRestPoolConnpoolstatsClear { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE Invoke-AviRestPoolConnpoolstatsClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolConnpoolstatsClear')]$PoolConnpoolstatsClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolConnpoolstatsClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/pool/${uuid}/connpoolstats/clear" Body = ConvertTo-JSON $PoolConnpoolstatsClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolConnpoolstatsClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolConnpoolstatsClear } } } Function New-AVIRestPoolScaleoutObject { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE New-AviRestPoolScaleout .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "reason": "", "uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolScaleout') $result } } Function New-AVIRestPoolScaleinObject { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE New-AviRestPoolScalein .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "reason": "", "servers": [ { "external_uuid": "", "ip": { "addr": "", "type": "" }, "port": 0 } ], "uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolScalein') $result } } Function Remove-AVIRestPool { <# .SYNOPSIS Configure Avi Pool Object API .EXAMPLE Get-AviRestPool | Remove-AviRestPool .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Pool')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Pool', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPool')]$Pool, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Pool') { $uuid = $Pool.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pool/${uuid}" } if ($pscmdlet.ShouldProcess("$($Pool.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPoolgroup { <# .SYNOPSIS Configure Avi PoolGroup Object API .EXAMPLE Get-AviRestPoolgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime/detail', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/poolgroup$Uuid" : '/api/poolgroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPoolgroup } } Function Set-AVIRestPoolgroup { <# .SYNOPSIS Configure Avi PoolGroup Object API .EXAMPLE $object = Get-AviRestPoolgroup $object.name = 'New name' Set-AviRestPoolgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroup')]$Poolgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Poolgroup.uuid $global:body = ConvertTo-JSON $Poolgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/poolgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Poolgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroup } } } Function New-AVIRestPoolgroup { <# .SYNOPSIS Configure Avi PoolGroup Object API .EXAMPLE New-AviRestPoolgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroup')]$Poolgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup" Body = ConvertTo-JSON $Poolgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Poolgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroup } } } Function New-AVIRestPoolgroupClear { <# .SYNOPSIS Configure Avi PoolGroup Object API .EXAMPLE New-AviRestPoolgroupClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupClear')]$PoolgroupClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup/clear" Body = ConvertTo-JSON $PoolgroupClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolgroupClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupClear } } } Function New-AVIRestPoolgroupObject { <# .SYNOPSIS Configure Avi PoolGroup Object API .EXAMPLE New-AviRestPoolgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroup') $result } } Function Invoke-AVIRestPoolgroupEnable_primary_poolClear { <# .SYNOPSIS Configure Avi PoolGroup Object API .EXAMPLE Invoke-AviRestPoolgroupEnable_primary_poolClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupEnable_primary_poolClear')]$PoolgroupEnable_primary_poolClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolgroupEnable_primary_poolClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup/${uuid}/enable_primary_pool/clear" Body = ConvertTo-JSON $PoolgroupEnable_primary_poolClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolgroupEnable_primary_poolClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupEnable_primary_poolClear } } } Function Remove-AVIRestPoolgroup { <# .SYNOPSIS Configure Avi PoolGroup Object API .EXAMPLE Get-AviRestPoolgroup | Remove-AviRestPoolgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Poolgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Poolgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroup')]$Poolgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Poolgroup') { $uuid = $Poolgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/poolgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Poolgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPoolgroupdeploymentpolicy { <# .SYNOPSIS Configure Avi PoolGroupDeploymentPolicy Object API .EXAMPLE Get-AviRestPoolgroupdeploymentpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'p', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/poolgroupdeploymentpolicy$Uuid" : '/api/poolgroupdeploymentpolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPoolgroupdeploymentpolicy } } Function Set-AVIRestPoolgroupdeploymentpolicy { <# .SYNOPSIS Configure Avi PoolGroupDeploymentPolicy Object API .EXAMPLE $object = Get-AviRestPoolgroupdeploymentpolicy $object.name = 'New name' Set-AviRestPoolgroupdeploymentpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupdeploymentpolicy')]$Poolgroupdeploymentpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Poolgroupdeploymentpolicy.uuid $global:body = ConvertTo-JSON $Poolgroupdeploymentpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/poolgroupdeploymentpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Poolgroupdeploymentpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupdeploymentpolicy } } } Function New-AVIRestPoolgroupdeploymentpolicy { <# .SYNOPSIS Configure Avi PoolGroupDeploymentPolicy Object API .EXAMPLE New-AviRestPoolgroupdeploymentpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupdeploymentpolicy')]$Poolgroupdeploymentpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroupdeploymentpolicy" Body = ConvertTo-JSON $Poolgroupdeploymentpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Poolgroupdeploymentpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupdeploymentpolicy } } } Function New-AVIRestPoolgroupdeploymentpolicyObject { <# .SYNOPSIS Configure Avi PoolGroupDeploymentPolicy Object API .EXAMPLE New-AviRestPoolgroupdeploymentpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroupdeploymentpolicy') $result } } Function Remove-AVIRestPoolgroupdeploymentpolicy { <# .SYNOPSIS Configure Avi PoolGroupDeploymentPolicy Object API .EXAMPLE Get-AviRestPoolgroupdeploymentpolicy | Remove-AviRestPoolgroupdeploymentpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Poolgroupdeploymentpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Poolgroupdeploymentpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupdeploymentpolicy')]$Poolgroupdeploymentpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Poolgroupdeploymentpolicy') { $uuid = $Poolgroupdeploymentpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/poolgroupdeploymentpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Poolgroupdeploymentpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPoolgroupInventory { <# .SYNOPSIS Configure Avi PoolGroupInventory Object API .EXAMPLE Get-AviRestPoolgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'p', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/poolgroup-inventory$Uuid" : '/api/poolgroup-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPoolgroupInventory } } Function Set-AVIRestPoolgroupInventory { <# .SYNOPSIS Configure Avi PoolGroupInventory Object API .EXAMPLE $object = Get-AviRestPoolgroupInventory $object.name = 'New name' Set-AviRestPoolgroupInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupInventory')]$PoolgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolgroupInventory.uuid $global:body = ConvertTo-JSON $PoolgroupInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/poolgroup-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($PoolgroupInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupInventory } } } Function New-AVIRestPoolgroupInventory { <# .SYNOPSIS Configure Avi PoolGroupInventory Object API .EXAMPLE New-AviRestPoolgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupInventory')]$PoolgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/poolgroup-inventory" Body = ConvertTo-JSON $PoolgroupInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolgroupInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolgroupInventory } } } Function New-AVIRestPoolgroupInventoryObject { <# .SYNOPSIS Configure Avi PoolGroupInventory Object API .EXAMPLE New-AviRestPoolgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolgroupInventory') $result } } Function Remove-AVIRestPoolgroupInventory { <# .SYNOPSIS Configure Avi PoolGroupInventory Object API .EXAMPLE Get-AviRestPoolgroupInventory | Remove-AviRestPoolgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'PoolgroupInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'PoolgroupInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolgroupInventory')]$PoolgroupInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'PoolgroupInventory') { $uuid = $PoolgroupInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/poolgroup-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($PoolgroupInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPoolInventory { <# .SYNOPSIS Configure Avi PoolInventory Object API .EXAMPLE Get-AviRestPoolInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'p', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/pool-inventory$Uuid" : '/api/pool-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPoolInventory } } Function Set-AVIRestPoolInventory { <# .SYNOPSIS Configure Avi PoolInventory Object API .EXAMPLE $object = Get-AviRestPoolInventory $object.name = 'New name' Set-AviRestPoolInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolInventory')]$PoolInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $PoolInventory.uuid $global:body = ConvertTo-JSON $PoolInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/pool-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($PoolInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPoolInventory } } } Function New-AVIRestPoolInventory { <# .SYNOPSIS Configure Avi PoolInventory Object API .EXAMPLE New-AviRestPoolInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolInventory')]$PoolInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/pool-inventory" Body = ConvertTo-JSON $PoolInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($PoolInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPoolInventory } } } Function New-AVIRestPoolInventoryObject { <# .SYNOPSIS Configure Avi PoolInventory Object API .EXAMPLE New-AviRestPoolInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPoolInventory') $result } } Function Remove-AVIRestPoolInventory { <# .SYNOPSIS Configure Avi PoolInventory Object API .EXAMPLE Get-AviRestPoolInventory | Remove-AviRestPoolInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'PoolInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'PoolInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPoolInventory')]$PoolInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'PoolInventory') { $uuid = $PoolInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/pool-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($PoolInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPortalfileupload { <# .SYNOPSIS Configure Avi PortalFileUpload Object API .EXAMPLE Get-AviRestPortalfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'p', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/portalfileupload/{uuid}$Uuid" : '/api/portalfileupload/{uuid}' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPortalfileupload } } Function Set-AVIRestPortalfileupload { <# .SYNOPSIS Configure Avi PortalFileUpload Object API .EXAMPLE $object = Get-AviRestPortalfileupload $object.name = 'New name' Set-AviRestPortalfileupload $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPortalfileupload')]$Portalfileupload ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Portalfileupload.uuid $global:body = ConvertTo-JSON $Portalfileupload -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/portalfileupload/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Portalfileupload.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPortalfileupload } } } Function New-AVIRestPortalfileupload { <# .SYNOPSIS Configure Avi PortalFileUpload Object API .EXAMPLE New-AviRestPortalfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPortalfileupload')]$Portalfileupload ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/portalfileupload" Body = ConvertTo-JSON $Portalfileupload -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Portalfileupload.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPortalfileupload } } } Function New-AVIRestPortalfileuploadObject { <# .SYNOPSIS Configure Avi PortalFileUpload Object API .EXAMPLE New-AviRestPortalfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPortalfileupload') $result } } Function Remove-AVIRestPortalfileupload { <# .SYNOPSIS Configure Avi PortalFileUpload Object API .EXAMPLE Get-AviRestPortalfileupload | Remove-AviRestPortalfileupload .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Portalfileupload')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Portalfileupload', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPortalfileupload')]$Portalfileupload, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '18.2.8' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Portalfileupload') { $uuid = $Portalfileupload.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/portalfileupload/${uuid}" } if ($pscmdlet.ShouldProcess("$($Portalfileupload.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestPrioritylabels { <# .SYNOPSIS Configure Avi PriorityLabels Object API .EXAMPLE Get-AviRestPrioritylabels .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'p', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/prioritylabels$Uuid" : '/api/prioritylabels' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestPrioritylabels } } Function Set-AVIRestPrioritylabels { <# .SYNOPSIS Configure Avi PriorityLabels Object API .EXAMPLE $object = Get-AviRestPrioritylabels $object.name = 'New name' Set-AviRestPrioritylabels $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPrioritylabels')]$Prioritylabels ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Prioritylabels.uuid $global:body = ConvertTo-JSON $Prioritylabels -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/prioritylabels/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Prioritylabels.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestPrioritylabels } } } Function New-AVIRestPrioritylabels { <# .SYNOPSIS Configure Avi PriorityLabels Object API .EXAMPLE New-AviRestPrioritylabels .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPrioritylabels')]$Prioritylabels ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/prioritylabels" Body = ConvertTo-JSON $Prioritylabels -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Prioritylabels.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestPrioritylabels } } } Function New-AVIRestPrioritylabelsObject { <# .SYNOPSIS Configure Avi PriorityLabels Object API .EXAMPLE New-AviRestPrioritylabels .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestPrioritylabels') $result } } Function Remove-AVIRestPrioritylabels { <# .SYNOPSIS Configure Avi PriorityLabels Object API .EXAMPLE Get-AviRestPrioritylabels | Remove-AviRestPrioritylabels .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Prioritylabels')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Prioritylabels', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestPrioritylabels')]$Prioritylabels, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Prioritylabels') { $uuid = $Prioritylabels.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/prioritylabels/${uuid}" } if ($pscmdlet.ShouldProcess("$($Prioritylabels.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestProtocolparser { <# .SYNOPSIS Configure Avi ProtocolParser Object API .EXAMPLE Get-AviRestProtocolparser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'p', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/protocolparser$Uuid" : '/api/protocolparser' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestProtocolparser } } Function Set-AVIRestProtocolparser { <# .SYNOPSIS Configure Avi ProtocolParser Object API .EXAMPLE $object = Get-AviRestProtocolparser $object.name = 'New name' Set-AviRestProtocolparser $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestProtocolparser')]$Protocolparser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Protocolparser.uuid $global:body = ConvertTo-JSON $Protocolparser -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/protocolparser/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Protocolparser.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestProtocolparser } } } Function New-AVIRestProtocolparser { <# .SYNOPSIS Configure Avi ProtocolParser Object API .EXAMPLE New-AviRestProtocolparser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestProtocolparser')]$Protocolparser ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/protocolparser" Body = ConvertTo-JSON $Protocolparser -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Protocolparser.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestProtocolparser } } } Function New-AVIRestProtocolparserObject { <# .SYNOPSIS Configure Avi ProtocolParser Object API .EXAMPLE New-AviRestProtocolparser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestProtocolparser') $result } } Function Remove-AVIRestProtocolparser { <# .SYNOPSIS Configure Avi ProtocolParser Object API .EXAMPLE Get-AviRestProtocolparser | Remove-AviRestProtocolparser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Protocolparser')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Protocolparser', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestProtocolparser')]$Protocolparser, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Protocolparser') { $uuid = $Protocolparser.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/protocolparser/${uuid}" } if ($pscmdlet.ShouldProcess("$($Protocolparser.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestRole { <# .SYNOPSIS Configure Avi Role Object API .EXAMPLE Get-AviRestRole .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'r', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/role$Uuid" : '/api/role' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestRole } } Function Set-AVIRestRole { <# .SYNOPSIS Configure Avi Role Object API .EXAMPLE $object = Get-AviRestRole $object.name = 'New name' Set-AviRestRole $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestRole')]$Role ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Role.uuid $global:body = ConvertTo-JSON $Role -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/role/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Role.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestRole } } } Function New-AVIRestRole { <# .SYNOPSIS Configure Avi Role Object API .EXAMPLE New-AviRestRole .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestRole')]$Role ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/role" Body = ConvertTo-JSON $Role -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Role.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestRole } } } Function New-AVIRestRoleObject { <# .SYNOPSIS Configure Avi Role Object API .EXAMPLE New-AviRestRole .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestRole') $result } } Function Remove-AVIRestRole { <# .SYNOPSIS Configure Avi Role Object API .EXAMPLE Get-AviRestRole | Remove-AviRestRole .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Role')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Role', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestRole')]$Role, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Role') { $uuid = $Role.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/role/${uuid}" } if ($pscmdlet.ShouldProcess("$($Role.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestScheduler { <# .SYNOPSIS Configure Avi Scheduler Object API .EXAMPLE Get-AviRestScheduler .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/scheduler$Uuid" : '/api/scheduler' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestScheduler } } Function Set-AVIRestScheduler { <# .SYNOPSIS Configure Avi Scheduler Object API .EXAMPLE $object = Get-AviRestScheduler $object.name = 'New name' Set-AviRestScheduler $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScheduler')]$Scheduler ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Scheduler.uuid $global:body = ConvertTo-JSON $Scheduler -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/scheduler/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Scheduler.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestScheduler } } } Function New-AVIRestScheduler { <# .SYNOPSIS Configure Avi Scheduler Object API .EXAMPLE New-AviRestScheduler .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScheduler')]$Scheduler ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/scheduler" Body = ConvertTo-JSON $Scheduler -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Scheduler.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestScheduler } } } Function New-AVIRestSchedulerObject { <# .SYNOPSIS Configure Avi Scheduler Object API .EXAMPLE New-AviRestScheduler .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestScheduler') $result } } Function Remove-AVIRestScheduler { <# .SYNOPSIS Configure Avi Scheduler Object API .EXAMPLE Get-AviRestScheduler | Remove-AviRestScheduler .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Scheduler')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Scheduler', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScheduler')]$Scheduler, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Scheduler') { $uuid = $Scheduler.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/scheduler/${uuid}" } if ($pscmdlet.ShouldProcess("$($Scheduler.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestScpoolserverstateinfo { <# .SYNOPSIS Configure Avi SCPoolServerStateInfo Object API .EXAMPLE Get-AviRestScpoolserverstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/scpoolserverstateinfo$Uuid" : '/api/scpoolserverstateinfo' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestScpoolserverstateinfo } } Function Set-AVIRestScpoolserverstateinfo { <# .SYNOPSIS Configure Avi SCPoolServerStateInfo Object API .EXAMPLE $object = Get-AviRestScpoolserverstateinfo $object.name = 'New name' Set-AviRestScpoolserverstateinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScpoolserverstateinfo')]$Scpoolserverstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Scpoolserverstateinfo.uuid $global:body = ConvertTo-JSON $Scpoolserverstateinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/scpoolserverstateinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Scpoolserverstateinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestScpoolserverstateinfo } } } Function New-AVIRestScpoolserverstateinfo { <# .SYNOPSIS Configure Avi SCPoolServerStateInfo Object API .EXAMPLE New-AviRestScpoolserverstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScpoolserverstateinfo')]$Scpoolserverstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/scpoolserverstateinfo" Body = ConvertTo-JSON $Scpoolserverstateinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Scpoolserverstateinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestScpoolserverstateinfo } } } Function New-AVIRestScpoolserverstateinfoObject { <# .SYNOPSIS Configure Avi SCPoolServerStateInfo Object API .EXAMPLE New-AviRestScpoolserverstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestScpoolserverstateinfo') $result } } Function Remove-AVIRestScpoolserverstateinfo { <# .SYNOPSIS Configure Avi SCPoolServerStateInfo Object API .EXAMPLE Get-AviRestScpoolserverstateinfo | Remove-AviRestScpoolserverstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Scpoolserverstateinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Scpoolserverstateinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScpoolserverstateinfo')]$Scpoolserverstateinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Scpoolserverstateinfo') { $uuid = $Scpoolserverstateinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/scpoolserverstateinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Scpoolserverstateinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestScvsstateinfo { <# .SYNOPSIS Configure Avi SCVsStateInfo Object API .EXAMPLE Get-AviRestScvsstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/scvsstateinfo$Uuid" : '/api/scvsstateinfo' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestScvsstateinfo } } Function Set-AVIRestScvsstateinfo { <# .SYNOPSIS Configure Avi SCVsStateInfo Object API .EXAMPLE $object = Get-AviRestScvsstateinfo $object.name = 'New name' Set-AviRestScvsstateinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScvsstateinfo')]$Scvsstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Scvsstateinfo.uuid $global:body = ConvertTo-JSON $Scvsstateinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/scvsstateinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Scvsstateinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestScvsstateinfo } } } Function New-AVIRestScvsstateinfo { <# .SYNOPSIS Configure Avi SCVsStateInfo Object API .EXAMPLE New-AviRestScvsstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScvsstateinfo')]$Scvsstateinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/scvsstateinfo" Body = ConvertTo-JSON $Scvsstateinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Scvsstateinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestScvsstateinfo } } } Function New-AVIRestScvsstateinfoObject { <# .SYNOPSIS Configure Avi SCVsStateInfo Object API .EXAMPLE New-AviRestScvsstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestScvsstateinfo') $result } } Function Remove-AVIRestScvsstateinfo { <# .SYNOPSIS Configure Avi SCVsStateInfo Object API .EXAMPLE Get-AviRestScvsstateinfo | Remove-AviRestScvsstateinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Scvsstateinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Scvsstateinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestScvsstateinfo')]$Scvsstateinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Scvsstateinfo') { $uuid = $Scvsstateinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/scvsstateinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Scvsstateinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSecurechannelavailablelocalips { <# .SYNOPSIS Configure Avi SecureChannelAvailableLocalIPs Object API .EXAMPLE Get-AviRestSecurechannelavailablelocalips .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/securechannelavailablelocalips$Uuid" : '/api/securechannelavailablelocalips' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSecurechannelavailablelocalips } } Function Set-AVIRestSecurechannelavailablelocalips { <# .SYNOPSIS Configure Avi SecureChannelAvailableLocalIPs Object API .EXAMPLE $object = Get-AviRestSecurechannelavailablelocalips $object.name = 'New name' Set-AviRestSecurechannelavailablelocalips $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelavailablelocalips')]$Securechannelavailablelocalips ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securechannelavailablelocalips.uuid $global:body = ConvertTo-JSON $Securechannelavailablelocalips -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securechannelavailablelocalips/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securechannelavailablelocalips.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelavailablelocalips } } } Function New-AVIRestSecurechannelavailablelocalips { <# .SYNOPSIS Configure Avi SecureChannelAvailableLocalIPs Object API .EXAMPLE New-AviRestSecurechannelavailablelocalips .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelavailablelocalips')]$Securechannelavailablelocalips ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securechannelavailablelocalips" Body = ConvertTo-JSON $Securechannelavailablelocalips -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securechannelavailablelocalips.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelavailablelocalips } } } Function New-AVIRestSecurechannelavailablelocalipsObject { <# .SYNOPSIS Configure Avi SecureChannelAvailableLocalIPs Object API .EXAMPLE New-AviRestSecurechannelavailablelocalips .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecurechannelavailablelocalips') $result } } Function Remove-AVIRestSecurechannelavailablelocalips { <# .SYNOPSIS Configure Avi SecureChannelAvailableLocalIPs Object API .EXAMPLE Get-AviRestSecurechannelavailablelocalips | Remove-AviRestSecurechannelavailablelocalips .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securechannelavailablelocalips')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securechannelavailablelocalips', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelavailablelocalips')]$Securechannelavailablelocalips, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securechannelavailablelocalips') { $uuid = $Securechannelavailablelocalips.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securechannelavailablelocalips/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securechannelavailablelocalips.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSecurechannelmapping { <# .SYNOPSIS Configure Avi SecureChannelMapping Object API .EXAMPLE Get-AviRestSecurechannelmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/securechannelmapping$Uuid" : '/api/securechannelmapping' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSecurechannelmapping } } Function Set-AVIRestSecurechannelmapping { <# .SYNOPSIS Configure Avi SecureChannelMapping Object API .EXAMPLE $object = Get-AviRestSecurechannelmapping $object.name = 'New name' Set-AviRestSecurechannelmapping $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelmapping')]$Securechannelmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securechannelmapping.uuid $global:body = ConvertTo-JSON $Securechannelmapping -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securechannelmapping/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securechannelmapping.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelmapping } } } Function New-AVIRestSecurechannelmapping { <# .SYNOPSIS Configure Avi SecureChannelMapping Object API .EXAMPLE New-AviRestSecurechannelmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelmapping')]$Securechannelmapping ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securechannelmapping" Body = ConvertTo-JSON $Securechannelmapping -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securechannelmapping.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechannelmapping } } } Function New-AVIRestSecurechannelmappingObject { <# .SYNOPSIS Configure Avi SecureChannelMapping Object API .EXAMPLE New-AviRestSecurechannelmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecurechannelmapping') $result } } Function Remove-AVIRestSecurechannelmapping { <# .SYNOPSIS Configure Avi SecureChannelMapping Object API .EXAMPLE Get-AviRestSecurechannelmapping | Remove-AviRestSecurechannelmapping .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securechannelmapping')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securechannelmapping', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechannelmapping')]$Securechannelmapping, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securechannelmapping') { $uuid = $Securechannelmapping.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securechannelmapping/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securechannelmapping.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSecurechanneltoken { <# .SYNOPSIS Configure Avi SecureChannelToken Object API .EXAMPLE Get-AviRestSecurechanneltoken .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/securechanneltoken$Uuid" : '/api/securechanneltoken' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSecurechanneltoken } } Function Set-AVIRestSecurechanneltoken { <# .SYNOPSIS Configure Avi SecureChannelToken Object API .EXAMPLE $object = Get-AviRestSecurechanneltoken $object.name = 'New name' Set-AviRestSecurechanneltoken $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechanneltoken')]$Securechanneltoken ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securechanneltoken.uuid $global:body = ConvertTo-JSON $Securechanneltoken -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securechanneltoken/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securechanneltoken.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechanneltoken } } } Function New-AVIRestSecurechanneltoken { <# .SYNOPSIS Configure Avi SecureChannelToken Object API .EXAMPLE New-AviRestSecurechanneltoken .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechanneltoken')]$Securechanneltoken ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securechanneltoken" Body = ConvertTo-JSON $Securechanneltoken -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securechanneltoken.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecurechanneltoken } } } Function New-AVIRestSecurechanneltokenObject { <# .SYNOPSIS Configure Avi SecureChannelToken Object API .EXAMPLE New-AviRestSecurechanneltoken .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecurechanneltoken') $result } } Function Remove-AVIRestSecurechanneltoken { <# .SYNOPSIS Configure Avi SecureChannelToken Object API .EXAMPLE Get-AviRestSecurechanneltoken | Remove-AviRestSecurechanneltoken .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securechanneltoken')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securechanneltoken', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecurechanneltoken')]$Securechanneltoken, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securechanneltoken') { $uuid = $Securechanneltoken.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securechanneltoken/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securechanneltoken.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSecuritymanagerdata { <# .SYNOPSIS Configure Avi SecurityManagerData Object API .EXAMPLE Get-AviRestSecuritymanagerdata .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/securitymanagerdata$Uuid" : '/api/securitymanagerdata' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSecuritymanagerdata } } Function Set-AVIRestSecuritymanagerdata { <# .SYNOPSIS Configure Avi SecurityManagerData Object API .EXAMPLE $object = Get-AviRestSecuritymanagerdata $object.name = 'New name' Set-AviRestSecuritymanagerdata $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritymanagerdata')]$Securitymanagerdata ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securitymanagerdata.uuid $global:body = ConvertTo-JSON $Securitymanagerdata -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securitymanagerdata/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securitymanagerdata.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritymanagerdata } } } Function New-AVIRestSecuritymanagerdata { <# .SYNOPSIS Configure Avi SecurityManagerData Object API .EXAMPLE New-AviRestSecuritymanagerdata .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritymanagerdata')]$Securitymanagerdata ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securitymanagerdata" Body = ConvertTo-JSON $Securitymanagerdata -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securitymanagerdata.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritymanagerdata } } } Function New-AVIRestSecuritymanagerdataObject { <# .SYNOPSIS Configure Avi SecurityManagerData Object API .EXAMPLE New-AviRestSecuritymanagerdata .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecuritymanagerdata') $result } } Function Remove-AVIRestSecuritymanagerdata { <# .SYNOPSIS Configure Avi SecurityManagerData Object API .EXAMPLE Get-AviRestSecuritymanagerdata | Remove-AviRestSecuritymanagerdata .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securitymanagerdata')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securitymanagerdata', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritymanagerdata')]$Securitymanagerdata, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securitymanagerdata') { $uuid = $Securitymanagerdata.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securitymanagerdata/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securitymanagerdata.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSecuritypolicy { <# .SYNOPSIS Configure Avi SecurityPolicy Object API .EXAMPLE Get-AviRestSecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/securitypolicy$Uuid" : '/api/securitypolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSecuritypolicy } } Function Set-AVIRestSecuritypolicy { <# .SYNOPSIS Configure Avi SecurityPolicy Object API .EXAMPLE $object = Get-AviRestSecuritypolicy $object.name = 'New name' Set-AviRestSecuritypolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritypolicy')]$Securitypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Securitypolicy.uuid $global:body = ConvertTo-JSON $Securitypolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/securitypolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Securitypolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritypolicy } } } Function New-AVIRestSecuritypolicy { <# .SYNOPSIS Configure Avi SecurityPolicy Object API .EXAMPLE New-AviRestSecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritypolicy')]$Securitypolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/securitypolicy" Body = ConvertTo-JSON $Securitypolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Securitypolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSecuritypolicy } } } Function New-AVIRestSecuritypolicyObject { <# .SYNOPSIS Configure Avi SecurityPolicy Object API .EXAMPLE New-AviRestSecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSecuritypolicy') $result } } Function Remove-AVIRestSecuritypolicy { <# .SYNOPSIS Configure Avi SecurityPolicy Object API .EXAMPLE Get-AviRestSecuritypolicy | Remove-AviRestSecuritypolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Securitypolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Securitypolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSecuritypolicy')]$Securitypolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Securitypolicy') { $uuid = $Securitypolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/securitypolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Securitypolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSeproperties { <# .SYNOPSIS Configure Avi SeProperties Object API .EXAMPLE Get-AviRestSeproperties .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/$Uuid" : '/api/' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSeproperties } } Function Set-AVIRestSeproperties { <# .SYNOPSIS Configure Avi SeProperties Object API .EXAMPLE $object = Get-AviRestSeproperties $object.name = 'New name' Set-AviRestSeproperties $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSeproperties')]$Seproperties ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Seproperties.uuid $global:body = ConvertTo-JSON $Seproperties -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/seproperties" Body = $body } if ($pscmdlet.ShouldProcess("$($Seproperties.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSeproperties } } } Function Get-AVIRestServerautoscalepolicy { <# .SYNOPSIS Configure Avi ServerAutoScalePolicy Object API .EXAMPLE Get-AviRestServerautoscalepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/serverautoscalepolicy$Uuid" : '/api/serverautoscalepolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestServerautoscalepolicy } } Function Set-AVIRestServerautoscalepolicy { <# .SYNOPSIS Configure Avi ServerAutoScalePolicy Object API .EXAMPLE $object = Get-AviRestServerautoscalepolicy $object.name = 'New name' Set-AviRestServerautoscalepolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServerautoscalepolicy')]$Serverautoscalepolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serverautoscalepolicy.uuid $global:body = ConvertTo-JSON $Serverautoscalepolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serverautoscalepolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serverautoscalepolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServerautoscalepolicy } } } Function New-AVIRestServerautoscalepolicy { <# .SYNOPSIS Configure Avi ServerAutoScalePolicy Object API .EXAMPLE New-AviRestServerautoscalepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServerautoscalepolicy')]$Serverautoscalepolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serverautoscalepolicy" Body = ConvertTo-JSON $Serverautoscalepolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serverautoscalepolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServerautoscalepolicy } } } Function New-AVIRestServerautoscalepolicyObject { <# .SYNOPSIS Configure Avi ServerAutoScalePolicy Object API .EXAMPLE New-AviRestServerautoscalepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServerautoscalepolicy') $result } } Function Remove-AVIRestServerautoscalepolicy { <# .SYNOPSIS Configure Avi ServerAutoScalePolicy Object API .EXAMPLE Get-AviRestServerautoscalepolicy | Remove-AviRestServerautoscalepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serverautoscalepolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serverautoscalepolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServerautoscalepolicy')]$Serverautoscalepolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serverautoscalepolicy') { $uuid = $Serverautoscalepolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serverautoscalepolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serverautoscalepolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestServiceengine { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Get-AviRestServiceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime,runtime/detail,internal,ipstat,arpstat,icmpstat,mbufstats,mallocstats,shmallocstats,seassertstats/dp,seassertstats/ag,sevshbstats,sevssplacement,cpu,cpu/detail,meminfo,interface,bgp,bgp/debug,bgp/advertised_routes,bgp/peer_status,bgp/peer_info,bgp/running_config,bgp/peer_state,bfd/running_config,bfd/session_status,interfacesummary,interface/lacp,lldp,route,ip6route,arptable,httpstats,seruminsertionstats,selogstats,seauthstats,vnicdb,vnicdbhistory,graphdb,seagent,resourcemap,consistenthash,appmap,shardclientevents,rteringstat,sehmprobedisable,flowtablestat,flowtable,vshash,flowtable_remote,tcp-flows,sctp-flows,tcp-flows/detail,sctp-flows/detail,metrics,metrics/detail,metrics/debug,metrics/debug/summary,dosstat,memdist,placement,reservedvs,microservice,ndtable,ip6stat,icmp6stat,natstat,nat-flows,network-service,natpolicystats,ratelimiting/rl/internal,ratelimiting/msf/internal,routestat,route-flows,objsync,resolverdb,resolverdbsummary,botuacacheruntime,botuacachestatsruntime,placement/summary,placement/detail,adaptiveevents', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/serviceengine$Uuid" : '/api/serviceengine' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestServiceengine } } Function Set-AVIRestServiceengine { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE $object = Get-AviRestServiceengine $object.name = 'New name' Set-AviRestServiceengine $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengine')]$Serviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serviceengine.uuid $global:body = ConvertTo-JSON $Serviceengine -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceengine/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serviceengine.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengine } } } Function New-AVIRestServiceengine { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengine')]$Serviceengine ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine" Body = ConvertTo-JSON $Serviceengine -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serviceengine.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengine } } } Function New-AVIRestServiceengineClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineClear')]$ServiceengineClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/clear" Body = ConvertTo-JSON $ServiceengineClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineClear } } } Function New-AVIRestServiceengineObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengine') $result } } Function New-AVIRestServiceengineClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineClear') $result } } Function Invoke-AVIRestServiceengineReboot { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineReboot .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineReboot')]$ServiceengineReboot ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineReboot.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/reboot" Body = ConvertTo-JSON $ServiceengineReboot -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineReboot.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineReboot } } } Function Invoke-AVIRestServiceengineForcedelete { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineForcedelete .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineForcedelete')]$ServiceengineForcedelete ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineForcedelete.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/forcedelete" Body = ConvertTo-JSON $ServiceengineForcedelete -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineForcedelete.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineForcedelete } } } Function Invoke-AVIRestServiceengineSwitchover { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineSwitchover .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineSwitchover')]$ServiceengineSwitchover ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineSwitchover.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/switchover" Body = ConvertTo-JSON $ServiceengineSwitchover -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineSwitchover.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineSwitchover } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_mbufClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_mbufClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_mbufClear')]$ServiceengineFaultinjectExhaust_mbufClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_mbufClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_mbuf/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_mbufClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_mbufClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_mbufClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_mclClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_mclClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_mclClear')]$ServiceengineFaultinjectExhaust_mclClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_mclClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_mcl/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_mclClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_mclClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_mclClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_mcl_smallClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_mcl_smallClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_mcl_smallClear')]$ServiceengineFaultinjectExhaust_mcl_smallClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_mcl_smallClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_mcl_small/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_mcl_smallClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_mcl_smallClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_mcl_smallClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_connClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_connClear')]$ServiceengineFaultinjectExhaust_connClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_connClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_conn/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_connClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_connClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_connClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_shm_connClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_shm_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_shm_connClear')]$ServiceengineFaultinjectExhaust_shm_connClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_shm_connClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_shm_conn/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_shm_connClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_shm_connClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_shm_connClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_cfgClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_cfgClear')]$ServiceengineFaultinjectExhaust_cfgClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_cfgClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_cfg/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_cfgClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_cfgClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_cfgClear } } } Function Invoke-AVIRestServiceengineFaultinjectExhaust_shm_cfgClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectExhaust_shm_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectExhaust_shm_cfgClear')]$ServiceengineFaultinjectExhaust_shm_cfgClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectExhaust_shm_cfgClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/exhaust_shm_cfg/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectExhaust_shm_cfgClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectExhaust_shm_cfgClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectExhaust_shm_cfgClear } } } Function Invoke-AVIRestServiceengineFaultinjectSefaultClear { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Invoke-AviRestServiceengineFaultinjectSefaultClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineFaultinjectSefaultClear')]$ServiceengineFaultinjectSefaultClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineFaultinjectSefaultClear.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine/${uuid}/faultinject/sefault/clear" Body = ConvertTo-JSON $ServiceengineFaultinjectSefaultClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineFaultinjectSefaultClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineFaultinjectSefaultClear } } } Function New-AVIRestServiceengineFaultinjectExhaust_mbufClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_mbufClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_mbufClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_mclClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_mclClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_mclClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_mcl_smallClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_mcl_smallClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_mcl_smallClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_connClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_connClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_shm_connClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_shm_connClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_shm_connClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_cfgClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_cfgClear') $result } } Function New-AVIRestServiceengineFaultinjectExhaust_shm_cfgClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectExhaust_shm_cfgClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectExhaust_shm_cfgClear') $result } } Function New-AVIRestServiceengineFaultinjectSefaultClearObject { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE New-AviRestServiceengineFaultinjectSefaultClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineFaultinjectSefaultClear') $result } } Function Remove-AVIRestServiceengine { <# .SYNOPSIS Configure Avi ServiceEngine Object API .EXAMPLE Get-AviRestServiceengine | Remove-AviRestServiceengine .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serviceengine')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serviceengine', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengine')]$Serviceengine, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serviceengine') { $uuid = $Serviceengine.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceengine/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serviceengine.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi ServiceEngineGroup Object API .EXAMPLE Get-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime,placement/summary,placement/detail,placement/ineligible', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/serviceenginegroup$Uuid" : '/api/serviceenginegroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroup } } Function Set-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi ServiceEngineGroup Object API .EXAMPLE $object = Get-AviRestServiceenginegroup $object.name = 'New name' Set-AviRestServiceenginegroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serviceenginegroup.uuid $global:body = ConvertTo-JSON $Serviceenginegroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceenginegroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroup } } } Function New-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi ServiceEngineGroup Object API .EXAMPLE New-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup" Body = ConvertTo-JSON $Serviceenginegroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroup } } } Function New-AVIRestServiceenginegroupClear { <# .SYNOPSIS Configure Avi ServiceEngineGroup Object API .EXAMPLE New-AviRestServiceenginegroupClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupClear')]$ServiceenginegroupClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup/clear" Body = ConvertTo-JSON $ServiceenginegroupClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupClear } } } Function New-AVIRestServiceenginegroupObject { <# .SYNOPSIS Configure Avi ServiceEngineGroup Object API .EXAMPLE New-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceenginegroup') $result } } Function Invoke-AVIRestServiceenginegroupRedistribute { <# .SYNOPSIS Configure Avi ServiceEngineGroup Object API .EXAMPLE Invoke-AviRestServiceenginegroupRedistribute .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupRedistribute')]$ServiceenginegroupRedistribute ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceenginegroupRedistribute.uuid $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup/${uuid}/redistribute" Body = ConvertTo-JSON $ServiceenginegroupRedistribute -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupRedistribute.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupRedistribute } } } Function Remove-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi ServiceEngineGroup Object API .EXAMPLE Get-AviRestServiceenginegroup | Remove-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serviceenginegroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serviceenginegroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serviceenginegroup') { $uuid = $Serviceenginegroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceenginegroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestServiceenginegroupInventory { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE Get-AviRestServiceenginegroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '/upgradestatussummary/{uuid},/serviceenginegroup/{uuid}', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/serviceenginegroup-inventory$Uuid" : '/api/serviceenginegroup-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupInventory } } Function Set-AVIRestServiceenginegroupInventory { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE $object = Get-AviRestServiceenginegroupInventory $object.name = 'New name' Set-AviRestServiceenginegroupInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupInventory')]$ServiceenginegroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceenginegroupInventory.uuid $global:body = ConvertTo-JSON $ServiceenginegroupInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceenginegroup-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupInventory } } } Function Set-AVIRestUpgradestatussummary { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE $object = Get-AviRestUpgradestatussummary $object.name = 'New name' Set-AviRestUpgradestatussummary $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatussummary')]$Upgradestatussummary ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Upgradestatussummary.uuid $global:body = ConvertTo-JSON $Upgradestatussummary -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/upgradestatussummary/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Upgradestatussummary.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatussummary } } } Function Set-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE $object = Get-AviRestServiceenginegroup $object.name = 'New name' Set-AviRestServiceenginegroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serviceenginegroup.uuid $global:body = ConvertTo-JSON $Serviceenginegroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceenginegroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroup } } } Function New-AVIRestServiceenginegroupInventory { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE New-AviRestServiceenginegroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupInventory')]$ServiceenginegroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup-inventory" Body = ConvertTo-JSON $ServiceenginegroupInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroupInventory } } } Function New-AVIRestUpgradestatussummary { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE New-AviRestUpgradestatussummary .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatussummary')]$Upgradestatussummary ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/upgradestatussummary" Body = ConvertTo-JSON $Upgradestatussummary -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Upgradestatussummary.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatussummary } } } Function New-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE New-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginegroup" Body = ConvertTo-JSON $Serviceenginegroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginegroup } } } Function New-AVIRestServiceenginegroupInventoryObject { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE New-AviRestServiceenginegroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceenginegroupInventory') $result } } Function New-AVIRestUpgradestatussummaryObject { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE New-AviRestUpgradestatussummary .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUpgradestatussummary') $result } } Function New-AVIRestServiceenginegroupObject { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE New-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceenginegroup') $result } } Function Remove-AVIRestServiceenginegroupInventory { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE Get-AviRestServiceenginegroupInventory | Remove-AviRestServiceenginegroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'ServiceenginegroupInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'ServiceenginegroupInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroupInventory')]$ServiceenginegroupInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'ServiceenginegroupInventory') { $uuid = $ServiceenginegroupInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceenginegroup-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($ServiceenginegroupInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestUpgradestatussummary { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE Get-AviRestUpgradestatussummary | Remove-AviRestUpgradestatussummary .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Upgradestatussummary')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Upgradestatussummary', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatussummary')]$Upgradestatussummary, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Upgradestatussummary') { $uuid = $Upgradestatussummary.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/upgradestatussummary/${uuid}" } if ($pscmdlet.ShouldProcess("$($Upgradestatussummary.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Remove-AVIRestServiceenginegroup { <# .SYNOPSIS Configure Avi ServiceEngineGroupInventory Object API .EXAMPLE Get-AviRestServiceenginegroup | Remove-AviRestServiceenginegroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serviceenginegroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serviceenginegroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginegroup')]$Serviceenginegroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serviceenginegroup') { $uuid = $Serviceenginegroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceenginegroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serviceenginegroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestServiceengineInventory { <# .SYNOPSIS Configure Avi ServiceEngineInventory Object API .EXAMPLE Get-AviRestServiceengineInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/serviceengine-inventory$Uuid" : '/api/serviceengine-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestServiceengineInventory } } Function Set-AVIRestServiceengineInventory { <# .SYNOPSIS Configure Avi ServiceEngineInventory Object API .EXAMPLE $object = Get-AviRestServiceengineInventory $object.name = 'New name' Set-AviRestServiceengineInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineInventory')]$ServiceengineInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $ServiceengineInventory.uuid $global:body = ConvertTo-JSON $ServiceengineInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceengine-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($ServiceengineInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineInventory } } } Function New-AVIRestServiceengineInventory { <# .SYNOPSIS Configure Avi ServiceEngineInventory Object API .EXAMPLE New-AviRestServiceengineInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineInventory')]$ServiceengineInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceengine-inventory" Body = ConvertTo-JSON $ServiceengineInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($ServiceengineInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceengineInventory } } } Function New-AVIRestServiceengineInventoryObject { <# .SYNOPSIS Configure Avi ServiceEngineInventory Object API .EXAMPLE New-AviRestServiceengineInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceengineInventory') $result } } Function Remove-AVIRestServiceengineInventory { <# .SYNOPSIS Configure Avi ServiceEngineInventory Object API .EXAMPLE Get-AviRestServiceengineInventory | Remove-AviRestServiceengineInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'ServiceengineInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'ServiceengineInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceengineInventory')]$ServiceengineInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'ServiceengineInventory') { $uuid = $ServiceengineInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceengine-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($ServiceengineInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestServiceenginepolicy { <# .SYNOPSIS Configure Avi ServiceEnginePolicy Object API .EXAMPLE Get-AviRestServiceenginepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '18.2.4' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/serviceenginepolicy/{uuid}$Uuid" : '/api/serviceenginepolicy/{uuid}' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestServiceenginepolicy } } Function Set-AVIRestServiceenginepolicy { <# .SYNOPSIS Configure Avi ServiceEnginePolicy Object API .EXAMPLE $object = Get-AviRestServiceenginepolicy $object.name = 'New name' Set-AviRestServiceenginepolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginepolicy')]$Serviceenginepolicy ) Begin { $swaggerVersion = '18.2.4' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Serviceenginepolicy.uuid $global:body = ConvertTo-JSON $Serviceenginepolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/serviceenginepolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Serviceenginepolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginepolicy } } } Function New-AVIRestServiceenginepolicy { <# .SYNOPSIS Configure Avi ServiceEnginePolicy Object API .EXAMPLE New-AviRestServiceenginepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginepolicy')]$Serviceenginepolicy ) Begin { $swaggerVersion = '18.2.4' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/serviceenginepolicy" Body = ConvertTo-JSON $Serviceenginepolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Serviceenginepolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestServiceenginepolicy } } } Function New-AVIRestServiceenginepolicyObject { <# .SYNOPSIS Configure Avi ServiceEnginePolicy Object API .EXAMPLE New-AviRestServiceenginepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '18.2.4' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestServiceenginepolicy') $result } } Function Remove-AVIRestServiceenginepolicy { <# .SYNOPSIS Configure Avi ServiceEnginePolicy Object API .EXAMPLE Get-AviRestServiceenginepolicy | Remove-AviRestServiceenginepolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Serviceenginepolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Serviceenginepolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestServiceenginepolicy')]$Serviceenginepolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '18.2.4' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Serviceenginepolicy') { $uuid = $Serviceenginepolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/serviceenginepolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Serviceenginepolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSiteversion { <# .SYNOPSIS Configure Avi SiteVersion Object API .EXAMPLE Get-AviRestSiteversion .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/siteversion$Uuid" : '/api/siteversion' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSiteversion } } Function Set-AVIRestSiteversion { <# .SYNOPSIS Configure Avi SiteVersion Object API .EXAMPLE $object = Get-AviRestSiteversion $object.name = 'New name' Set-AviRestSiteversion $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSiteversion')]$Siteversion ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Siteversion.uuid $global:body = ConvertTo-JSON $Siteversion -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/siteversion/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Siteversion.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSiteversion } } } Function New-AVIRestSiteversion { <# .SYNOPSIS Configure Avi SiteVersion Object API .EXAMPLE New-AviRestSiteversion .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSiteversion')]$Siteversion ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/siteversion" Body = ConvertTo-JSON $Siteversion -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Siteversion.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSiteversion } } } Function New-AVIRestSiteversionObject { <# .SYNOPSIS Configure Avi SiteVersion Object API .EXAMPLE New-AviRestSiteversion .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSiteversion') $result } } Function Remove-AVIRestSiteversion { <# .SYNOPSIS Configure Avi SiteVersion Object API .EXAMPLE Get-AviRestSiteversion | Remove-AviRestSiteversion .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Siteversion')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Siteversion', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSiteversion')]$Siteversion, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Siteversion') { $uuid = $Siteversion.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/siteversion/${uuid}" } if ($pscmdlet.ShouldProcess("$($Siteversion.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSnmptrapprofile { <# .SYNOPSIS Configure Avi SnmpTrapProfile Object API .EXAMPLE Get-AviRestSnmptrapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/snmptrapprofile$Uuid" : '/api/snmptrapprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSnmptrapprofile } } Function Set-AVIRestSnmptrapprofile { <# .SYNOPSIS Configure Avi SnmpTrapProfile Object API .EXAMPLE $object = Get-AviRestSnmptrapprofile $object.name = 'New name' Set-AviRestSnmptrapprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofile')]$Snmptrapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Snmptrapprofile.uuid $global:body = ConvertTo-JSON $Snmptrapprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/snmptrapprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Snmptrapprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSnmptrapprofile } } } Function New-AVIRestSnmptrapprofile { <# .SYNOPSIS Configure Avi SnmpTrapProfile Object API .EXAMPLE New-AviRestSnmptrapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofile')]$Snmptrapprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/snmptrapprofile" Body = ConvertTo-JSON $Snmptrapprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Snmptrapprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSnmptrapprofile } } } Function New-AVIRestSnmptrapprofileObject { <# .SYNOPSIS Configure Avi SnmpTrapProfile Object API .EXAMPLE New-AviRestSnmptrapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSnmptrapprofile') $result } } Function Invoke-AVIRestSnmptrapprofileTestsnmptrap { <# .SYNOPSIS Configure Avi SnmpTrapProfile Object API .EXAMPLE Invoke-AviRestSnmptrapprofileTestsnmptrap .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofileTestsnmptrap')]$SnmptrapprofileTestsnmptrap ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $SnmptrapprofileTestsnmptrap.uuid $splat = @{ Method = 'POST' Endpoint = "/api/snmptrapprofile/${uuid}/testsnmptrap" Body = ConvertTo-JSON $SnmptrapprofileTestsnmptrap -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($SnmptrapprofileTestsnmptrap.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSnmptrapprofileTestsnmptrap } } } Function Remove-AVIRestSnmptrapprofile { <# .SYNOPSIS Configure Avi SnmpTrapProfile Object API .EXAMPLE Get-AviRestSnmptrapprofile | Remove-AviRestSnmptrapprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Snmptrapprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Snmptrapprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSnmptrapprofile')]$Snmptrapprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Snmptrapprofile') { $uuid = $Snmptrapprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/snmptrapprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Snmptrapprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSslkeyandcertificate { <# .SYNOPSIS Configure Avi SSLKeyAndCertificate Object API .EXAMPLE Get-AviRestSslkeyandcertificate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'federated_info', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/sslkeyandcertificate$Uuid" : '/api/sslkeyandcertificate' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSslkeyandcertificate } } Function Set-AVIRestSslkeyandcertificate { <# .SYNOPSIS Configure Avi SSLKeyAndCertificate Object API .EXAMPLE $object = Get-AviRestSslkeyandcertificate $object.name = 'New name' Set-AviRestSslkeyandcertificate $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificate')]$Sslkeyandcertificate ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Sslkeyandcertificate.uuid $global:body = ConvertTo-JSON $Sslkeyandcertificate -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/sslkeyandcertificate/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Sslkeyandcertificate.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSslkeyandcertificate } } } Function New-AVIRestSslkeyandcertificate { <# .SYNOPSIS Configure Avi SSLKeyAndCertificate Object API .EXAMPLE New-AviRestSslkeyandcertificate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificate')]$Sslkeyandcertificate ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/sslkeyandcertificate" Body = ConvertTo-JSON $Sslkeyandcertificate -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Sslkeyandcertificate.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSslkeyandcertificate } } } Function New-AVIRestSslkeyandcertificateObject { <# .SYNOPSIS Configure Avi SSLKeyAndCertificate Object API .EXAMPLE New-AviRestSslkeyandcertificate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSslkeyandcertificate') $result } } Function Invoke-AVIRestSslkeyandcertificateRenew { <# .SYNOPSIS Configure Avi SSLKeyAndCertificate Object API .EXAMPLE Invoke-AviRestSslkeyandcertificateRenew .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificateRenew')]$SslkeyandcertificateRenew ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $SslkeyandcertificateRenew.uuid $splat = @{ Method = 'POST' Endpoint = "/api/sslkeyandcertificate/${uuid}/renew" Body = ConvertTo-JSON $SslkeyandcertificateRenew -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($SslkeyandcertificateRenew.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSslkeyandcertificateRenew } } } Function Remove-AVIRestSslkeyandcertificate { <# .SYNOPSIS Configure Avi SSLKeyAndCertificate Object API .EXAMPLE Get-AviRestSslkeyandcertificate | Remove-AviRestSslkeyandcertificate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Sslkeyandcertificate')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Sslkeyandcertificate', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslkeyandcertificate')]$Sslkeyandcertificate, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Sslkeyandcertificate') { $uuid = $Sslkeyandcertificate.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/sslkeyandcertificate/${uuid}" } if ($pscmdlet.ShouldProcess("$($Sslkeyandcertificate.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSslprofile { <# .SYNOPSIS Configure Avi SSLProfile Object API .EXAMPLE Get-AviRestSslprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'federated_info', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/sslprofile$Uuid" : '/api/sslprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSslprofile } } Function Set-AVIRestSslprofile { <# .SYNOPSIS Configure Avi SSLProfile Object API .EXAMPLE $object = Get-AviRestSslprofile $object.name = 'New name' Set-AviRestSslprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslprofile')]$Sslprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Sslprofile.uuid $global:body = ConvertTo-JSON $Sslprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/sslprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Sslprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSslprofile } } } Function New-AVIRestSslprofile { <# .SYNOPSIS Configure Avi SSLProfile Object API .EXAMPLE New-AviRestSslprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslprofile')]$Sslprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/sslprofile" Body = ConvertTo-JSON $Sslprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Sslprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSslprofile } } } Function New-AVIRestSslprofileObject { <# .SYNOPSIS Configure Avi SSLProfile Object API .EXAMPLE New-AviRestSslprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSslprofile') $result } } Function Remove-AVIRestSslprofile { <# .SYNOPSIS Configure Avi SSLProfile Object API .EXAMPLE Get-AviRestSslprofile | Remove-AviRestSslprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Sslprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Sslprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSslprofile')]$Sslprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Sslprofile') { $uuid = $Sslprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/sslprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Sslprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSsopolicy { <# .SYNOPSIS Configure Avi SSOPolicy Object API .EXAMPLE Get-AviRestSsopolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/ssopolicy$Uuid" : '/api/ssopolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSsopolicy } } Function Set-AVIRestSsopolicy { <# .SYNOPSIS Configure Avi SSOPolicy Object API .EXAMPLE $object = Get-AviRestSsopolicy $object.name = 'New name' Set-AviRestSsopolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSsopolicy')]$Ssopolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Ssopolicy.uuid $global:body = ConvertTo-JSON $Ssopolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/ssopolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Ssopolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSsopolicy } } } Function New-AVIRestSsopolicy { <# .SYNOPSIS Configure Avi SSOPolicy Object API .EXAMPLE New-AviRestSsopolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSsopolicy')]$Ssopolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/ssopolicy" Body = ConvertTo-JSON $Ssopolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Ssopolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSsopolicy } } } Function New-AVIRestSsopolicyObject { <# .SYNOPSIS Configure Avi SSOPolicy Object API .EXAMPLE New-AviRestSsopolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSsopolicy') $result } } Function Remove-AVIRestSsopolicy { <# .SYNOPSIS Configure Avi SSOPolicy Object API .EXAMPLE Get-AviRestSsopolicy | Remove-AviRestSsopolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Ssopolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Ssopolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSsopolicy')]$Ssopolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Ssopolicy') { $uuid = $Ssopolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/ssopolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Ssopolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffOperation Object API .EXAMPLE Get-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/statediffoperation$Uuid" : '/api/statediffoperation' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } Function Set-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffOperation Object API .EXAMPLE $object = Get-AviRestStatediffoperation $object.name = 'New name' Set-AviRestStatediffoperation $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Statediffoperation.uuid $global:body = ConvertTo-JSON $Statediffoperation -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/statediffoperation/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } } Function New-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffOperation Object API .EXAMPLE New-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/statediffoperation" Body = ConvertTo-JSON $Statediffoperation -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } } Function New-AVIRestStatediffoperationObject { <# .SYNOPSIS Configure Avi StatediffOperation Object API .EXAMPLE New-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestStatediffoperation') $result } } Function Remove-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffOperation Object API .EXAMPLE Get-AviRestStatediffoperation | Remove-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Statediffoperation')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Statediffoperation', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Statediffoperation') { $uuid = $Statediffoperation.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/statediffoperation/${uuid}" } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffSnapshot Object API .EXAMPLE Get-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/statediffoperation$Uuid" : '/api/statediffoperation' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } Function Set-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffSnapshot Object API .EXAMPLE $object = Get-AviRestStatediffoperation $object.name = 'New name' Set-AviRestStatediffoperation $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Statediffoperation.uuid $global:body = ConvertTo-JSON $Statediffoperation -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/statediffoperation/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } } Function New-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffSnapshot Object API .EXAMPLE New-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/statediffoperation" Body = ConvertTo-JSON $Statediffoperation -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestStatediffoperation } } } Function Remove-AVIRestStatediffoperation { <# .SYNOPSIS Configure Avi StatediffSnapshot Object API .EXAMPLE Get-AviRestStatediffoperation | Remove-AviRestStatediffoperation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Statediffoperation')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Statediffoperation', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStatediffoperation')]$Statediffoperation, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Statediffoperation') { $uuid = $Statediffoperation.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/statediffoperation/${uuid}" } if ($pscmdlet.ShouldProcess("$($Statediffoperation.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestStringgroup { <# .SYNOPSIS Configure Avi StringGroup Object API .EXAMPLE Get-AviRestStringgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/stringgroup$Uuid" : '/api/stringgroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestStringgroup } } Function Set-AVIRestStringgroup { <# .SYNOPSIS Configure Avi StringGroup Object API .EXAMPLE $object = Get-AviRestStringgroup $object.name = 'New name' Set-AviRestStringgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStringgroup')]$Stringgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Stringgroup.uuid $global:body = ConvertTo-JSON $Stringgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/stringgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Stringgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestStringgroup } } } Function New-AVIRestStringgroup { <# .SYNOPSIS Configure Avi StringGroup Object API .EXAMPLE New-AviRestStringgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStringgroup')]$Stringgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/stringgroup" Body = ConvertTo-JSON $Stringgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Stringgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestStringgroup } } } Function New-AVIRestStringgroupObject { <# .SYNOPSIS Configure Avi StringGroup Object API .EXAMPLE New-AviRestStringgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestStringgroup') $result } } Function Remove-AVIRestStringgroup { <# .SYNOPSIS Configure Avi StringGroup Object API .EXAMPLE Get-AviRestStringgroup | Remove-AviRestStringgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Stringgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Stringgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestStringgroup')]$Stringgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Stringgroup') { $uuid = $Stringgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/stringgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Stringgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestSystemconfiguration { <# .SYNOPSIS Configure Avi SystemConfiguration Object API .EXAMPLE Get-AviRestSystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = '', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/$Uuid" : '/api/' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSystemconfiguration } } Function Set-AVIRestSystemconfiguration { <# .SYNOPSIS Configure Avi SystemConfiguration Object API .EXAMPLE $object = Get-AviRestSystemconfiguration $object.name = 'New name' Set-AviRestSystemconfiguration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemconfiguration')]$Systemconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Systemconfiguration.uuid $global:body = ConvertTo-JSON $Systemconfiguration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/systemconfiguration" Body = $body } if ($pscmdlet.ShouldProcess("$($Systemconfiguration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSystemconfiguration } } } Function New-AVIRestSystemconfigurationSystestemail { <# .SYNOPSIS Configure Avi SystemConfiguration Object API .EXAMPLE New-AviRestSystemconfigurationSystestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemconfigurationSystestemail')]$SystemconfigurationSystestemail ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/systemconfiguration/systestemail" Body = ConvertTo-JSON $SystemconfigurationSystestemail -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($SystemconfigurationSystestemail.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSystemconfigurationSystestemail } } } Function New-AVIRestSystemconfigurationSystestemailObject { <# .SYNOPSIS Configure Avi SystemConfiguration Object API .EXAMPLE New-AviRestSystemconfigurationSystestemail .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "subject": "", "text": "", "to_emails": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "cc_emails": "", "subject": "", "text": "", "to_emails": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSystemconfigurationSystestemail') $result } } Function Get-AVIRestSystemlimits { <# .SYNOPSIS Configure Avi SystemLimits Object API .EXAMPLE Get-AviRestSystemlimits .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 's', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/systemlimits$Uuid" : '/api/systemlimits' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestSystemlimits } } Function Set-AVIRestSystemlimits { <# .SYNOPSIS Configure Avi SystemLimits Object API .EXAMPLE $object = Get-AviRestSystemlimits $object.name = 'New name' Set-AviRestSystemlimits $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemlimits')]$Systemlimits ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Systemlimits.uuid $global:body = ConvertTo-JSON $Systemlimits -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/systemlimits/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Systemlimits.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestSystemlimits } } } Function New-AVIRestSystemlimits { <# .SYNOPSIS Configure Avi SystemLimits Object API .EXAMPLE New-AviRestSystemlimits .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemlimits')]$Systemlimits ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/systemlimits" Body = ConvertTo-JSON $Systemlimits -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Systemlimits.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestSystemlimits } } } Function New-AVIRestSystemlimitsObject { <# .SYNOPSIS Configure Avi SystemLimits Object API .EXAMPLE New-AviRestSystemlimits .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestSystemlimits') $result } } Function Remove-AVIRestSystemlimits { <# .SYNOPSIS Configure Avi SystemLimits Object API .EXAMPLE Get-AviRestSystemlimits | Remove-AviRestSystemlimits .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Systemlimits')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Systemlimits', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestSystemlimits')]$Systemlimits, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Systemlimits') { $uuid = $Systemlimits.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/systemlimits/${uuid}" } if ($pscmdlet.ShouldProcess("$($Systemlimits.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestTenant { <# .SYNOPSIS Configure Avi Tenant Object API .EXAMPLE Get-AviRestTenant .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 't', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/tenant$Uuid" : '/api/tenant' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestTenant } } Function Set-AVIRestTenant { <# .SYNOPSIS Configure Avi Tenant Object API .EXAMPLE $object = Get-AviRestTenant $object.name = 'New name' Set-AviRestTenant $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenant')]$Tenant ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Tenant.uuid $global:body = ConvertTo-JSON $Tenant -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/tenant/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Tenant.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTenant } } } Function New-AVIRestTenant { <# .SYNOPSIS Configure Avi Tenant Object API .EXAMPLE New-AviRestTenant .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenant')]$Tenant ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/tenant" Body = ConvertTo-JSON $Tenant -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Tenant.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTenant } } } Function New-AVIRestTenantObject { <# .SYNOPSIS Configure Avi Tenant Object API .EXAMPLE New-AviRestTenant .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTenant') $result } } Function Remove-AVIRestTenant { <# .SYNOPSIS Configure Avi Tenant Object API .EXAMPLE Get-AviRestTenant | Remove-AviRestTenant .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Tenant')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Tenant', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenant')]$Tenant, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Tenant') { $uuid = $Tenant.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/tenant/${uuid}" } if ($pscmdlet.ShouldProcess("$($Tenant.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestTenantsystemconfiguration { <# .SYNOPSIS Configure Avi TenantSystemConfiguration Object API .EXAMPLE Get-AviRestTenantsystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 't', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/tenantsystemconfiguration$Uuid" : '/api/tenantsystemconfiguration' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestTenantsystemconfiguration } } Function Set-AVIRestTenantsystemconfiguration { <# .SYNOPSIS Configure Avi TenantSystemConfiguration Object API .EXAMPLE $object = Get-AviRestTenantsystemconfiguration $object.name = 'New name' Set-AviRestTenantsystemconfiguration $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenantsystemconfiguration')]$Tenantsystemconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Tenantsystemconfiguration.uuid $global:body = ConvertTo-JSON $Tenantsystemconfiguration -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/tenantsystemconfiguration/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Tenantsystemconfiguration.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTenantsystemconfiguration } } } Function New-AVIRestTenantsystemconfiguration { <# .SYNOPSIS Configure Avi TenantSystemConfiguration Object API .EXAMPLE New-AviRestTenantsystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenantsystemconfiguration')]$Tenantsystemconfiguration ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/tenantsystemconfiguration" Body = ConvertTo-JSON $Tenantsystemconfiguration -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Tenantsystemconfiguration.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTenantsystemconfiguration } } } Function New-AVIRestTenantsystemconfigurationObject { <# .SYNOPSIS Configure Avi TenantSystemConfiguration Object API .EXAMPLE New-AviRestTenantsystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTenantsystemconfiguration') $result } } Function Remove-AVIRestTenantsystemconfiguration { <# .SYNOPSIS Configure Avi TenantSystemConfiguration Object API .EXAMPLE Get-AviRestTenantsystemconfiguration | Remove-AviRestTenantsystemconfiguration .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Tenantsystemconfiguration')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Tenantsystemconfiguration', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTenantsystemconfiguration')]$Tenantsystemconfiguration, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Tenantsystemconfiguration') { $uuid = $Tenantsystemconfiguration.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/tenantsystemconfiguration/${uuid}" } if ($pscmdlet.ShouldProcess("$($Tenantsystemconfiguration.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestTestsedatastorelevel1 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel1 Object API .EXAMPLE Get-AviRestTestsedatastorelevel1 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 't', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/testsedatastorelevel1$Uuid" : '/api/testsedatastorelevel1' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel1 } } Function Set-AVIRestTestsedatastorelevel1 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel1 Object API .EXAMPLE $object = Get-AviRestTestsedatastorelevel1 $object.name = 'New name' Set-AviRestTestsedatastorelevel1 $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel1')]$Testsedatastorelevel1 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Testsedatastorelevel1.uuid $global:body = ConvertTo-JSON $Testsedatastorelevel1 -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/testsedatastorelevel1/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel1.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel1 } } } Function New-AVIRestTestsedatastorelevel1 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel1 Object API .EXAMPLE New-AviRestTestsedatastorelevel1 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel1')]$Testsedatastorelevel1 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/testsedatastorelevel1" Body = ConvertTo-JSON $Testsedatastorelevel1 -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel1.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel1 } } } Function New-AVIRestTestsedatastorelevel1Object { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel1 Object API .EXAMPLE New-AviRestTestsedatastorelevel1 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTestsedatastorelevel1') $result } } Function Remove-AVIRestTestsedatastorelevel1 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel1 Object API .EXAMPLE Get-AviRestTestsedatastorelevel1 | Remove-AviRestTestsedatastorelevel1 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Testsedatastorelevel1')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Testsedatastorelevel1', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel1')]$Testsedatastorelevel1, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Testsedatastorelevel1') { $uuid = $Testsedatastorelevel1.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/testsedatastorelevel1/${uuid}" } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel1.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestTestsedatastorelevel2 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel2 Object API .EXAMPLE Get-AviRestTestsedatastorelevel2 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 't', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/testsedatastorelevel2$Uuid" : '/api/testsedatastorelevel2' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel2 } } Function Set-AVIRestTestsedatastorelevel2 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel2 Object API .EXAMPLE $object = Get-AviRestTestsedatastorelevel2 $object.name = 'New name' Set-AviRestTestsedatastorelevel2 $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel2')]$Testsedatastorelevel2 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Testsedatastorelevel2.uuid $global:body = ConvertTo-JSON $Testsedatastorelevel2 -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/testsedatastorelevel2/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel2.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel2 } } } Function New-AVIRestTestsedatastorelevel2 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel2 Object API .EXAMPLE New-AviRestTestsedatastorelevel2 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel2')]$Testsedatastorelevel2 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/testsedatastorelevel2" Body = ConvertTo-JSON $Testsedatastorelevel2 -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel2.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel2 } } } Function New-AVIRestTestsedatastorelevel2Object { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel2 Object API .EXAMPLE New-AviRestTestsedatastorelevel2 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTestsedatastorelevel2') $result } } Function Remove-AVIRestTestsedatastorelevel2 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel2 Object API .EXAMPLE Get-AviRestTestsedatastorelevel2 | Remove-AviRestTestsedatastorelevel2 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Testsedatastorelevel2')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Testsedatastorelevel2', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel2')]$Testsedatastorelevel2, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Testsedatastorelevel2') { $uuid = $Testsedatastorelevel2.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/testsedatastorelevel2/${uuid}" } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel2.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestTestsedatastorelevel3 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel3 Object API .EXAMPLE Get-AviRestTestsedatastorelevel3 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 't', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/testsedatastorelevel3$Uuid" : '/api/testsedatastorelevel3' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel3 } } Function Set-AVIRestTestsedatastorelevel3 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel3 Object API .EXAMPLE $object = Get-AviRestTestsedatastorelevel3 $object.name = 'New name' Set-AviRestTestsedatastorelevel3 $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel3')]$Testsedatastorelevel3 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Testsedatastorelevel3.uuid $global:body = ConvertTo-JSON $Testsedatastorelevel3 -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/testsedatastorelevel3/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel3.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel3 } } } Function New-AVIRestTestsedatastorelevel3 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel3 Object API .EXAMPLE New-AviRestTestsedatastorelevel3 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel3')]$Testsedatastorelevel3 ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/testsedatastorelevel3" Body = ConvertTo-JSON $Testsedatastorelevel3 -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel3.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTestsedatastorelevel3 } } } Function New-AVIRestTestsedatastorelevel3Object { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel3 Object API .EXAMPLE New-AviRestTestsedatastorelevel3 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTestsedatastorelevel3') $result } } Function Remove-AVIRestTestsedatastorelevel3 { <# .SYNOPSIS Configure Avi TestSeDatastoreLevel3 Object API .EXAMPLE Get-AviRestTestsedatastorelevel3 | Remove-AviRestTestsedatastorelevel3 .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Testsedatastorelevel3')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Testsedatastorelevel3', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTestsedatastorelevel3')]$Testsedatastorelevel3, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Testsedatastorelevel3') { $uuid = $Testsedatastorelevel3.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/testsedatastorelevel3/${uuid}" } if ($pscmdlet.ShouldProcess("$($Testsedatastorelevel3.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestTrafficcloneprofile { <# .SYNOPSIS Configure Avi TrafficCloneProfile Object API .EXAMPLE Get-AviRestTrafficcloneprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 't', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/trafficcloneprofile$Uuid" : '/api/trafficcloneprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestTrafficcloneprofile } } Function Set-AVIRestTrafficcloneprofile { <# .SYNOPSIS Configure Avi TrafficCloneProfile Object API .EXAMPLE $object = Get-AviRestTrafficcloneprofile $object.name = 'New name' Set-AviRestTrafficcloneprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTrafficcloneprofile')]$Trafficcloneprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Trafficcloneprofile.uuid $global:body = ConvertTo-JSON $Trafficcloneprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/trafficcloneprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Trafficcloneprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestTrafficcloneprofile } } } Function New-AVIRestTrafficcloneprofile { <# .SYNOPSIS Configure Avi TrafficCloneProfile Object API .EXAMPLE New-AviRestTrafficcloneprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTrafficcloneprofile')]$Trafficcloneprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/trafficcloneprofile" Body = ConvertTo-JSON $Trafficcloneprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Trafficcloneprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestTrafficcloneprofile } } } Function New-AVIRestTrafficcloneprofileObject { <# .SYNOPSIS Configure Avi TrafficCloneProfile Object API .EXAMPLE New-AviRestTrafficcloneprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestTrafficcloneprofile') $result } } Function Remove-AVIRestTrafficcloneprofile { <# .SYNOPSIS Configure Avi TrafficCloneProfile Object API .EXAMPLE Get-AviRestTrafficcloneprofile | Remove-AviRestTrafficcloneprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Trafficcloneprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Trafficcloneprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestTrafficcloneprofile')]$Trafficcloneprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Trafficcloneprofile') { $uuid = $Trafficcloneprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/trafficcloneprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Trafficcloneprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusInfo Object API .EXAMPLE Get-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'u', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/upgradestatusinfo$Uuid" : '/api/upgradestatusinfo' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } Function Set-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusInfo Object API .EXAMPLE $object = Get-AviRestUpgradestatusinfo $object.name = 'New name' Set-AviRestUpgradestatusinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Upgradestatusinfo.uuid $global:body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/upgradestatusinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function New-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusInfo Object API .EXAMPLE New-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/upgradestatusinfo" Body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function New-AVIRestUpgradestatusinfoObject { <# .SYNOPSIS Configure Avi UpgradeStatusInfo Object API .EXAMPLE New-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUpgradestatusinfo') $result } } Function Remove-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusInfo Object API .EXAMPLE Get-AviRestUpgradestatusinfo | Remove-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Upgradestatusinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Upgradestatusinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Upgradestatusinfo') { $uuid = $Upgradestatusinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/upgradestatusinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusSummary Object API .EXAMPLE Get-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'u', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/upgradestatusinfo$Uuid" : '/api/upgradestatusinfo' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } Function Set-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusSummary Object API .EXAMPLE $object = Get-AviRestUpgradestatusinfo $object.name = 'New name' Set-AviRestUpgradestatusinfo $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Upgradestatusinfo.uuid $global:body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/upgradestatusinfo/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function New-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusSummary Object API .EXAMPLE New-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/upgradestatusinfo" Body = ConvertTo-JSON $Upgradestatusinfo -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUpgradestatusinfo } } } Function Remove-AVIRestUpgradestatusinfo { <# .SYNOPSIS Configure Avi UpgradeStatusSummary Object API .EXAMPLE Get-AviRestUpgradestatusinfo | Remove-AviRestUpgradestatusinfo .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Upgradestatusinfo')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Upgradestatusinfo', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUpgradestatusinfo')]$Upgradestatusinfo, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Upgradestatusinfo') { $uuid = $Upgradestatusinfo.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/upgradestatusinfo/${uuid}" } if ($pscmdlet.ShouldProcess("$($Upgradestatusinfo.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestUser { <# .SYNOPSIS Configure Avi User Object API .EXAMPLE Get-AviRestUser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'u', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/user$Uuid" : '/api/user' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestUser } } Function Set-AVIRestUser { <# .SYNOPSIS Configure Avi User Object API .EXAMPLE $object = Get-AviRestUser $object.name = 'New name' Set-AviRestUser $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUser')]$User ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $User.uuid $global:body = ConvertTo-JSON $User -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/user/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($User.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUser } } } Function New-AVIRestUser { <# .SYNOPSIS Configure Avi User Object API .EXAMPLE New-AviRestUser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUser')]$User ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/user" Body = ConvertTo-JSON $User -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($User.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUser } } } Function New-AVIRestUserObject { <# .SYNOPSIS Configure Avi User Object API .EXAMPLE New-AviRestUser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUser') $result } } Function Remove-AVIRestUser { <# .SYNOPSIS Configure Avi User Object API .EXAMPLE Get-AviRestUser | Remove-AviRestUser .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'User')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'User', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUser')]$User, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'User') { $uuid = $User.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/user/${uuid}" } if ($pscmdlet.ShouldProcess("$($User.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestUseraccountprofile { <# .SYNOPSIS Configure Avi UserAccountProfile Object API .EXAMPLE Get-AviRestUseraccountprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'u', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/useraccountprofile$Uuid" : '/api/useraccountprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestUseraccountprofile } } Function Set-AVIRestUseraccountprofile { <# .SYNOPSIS Configure Avi UserAccountProfile Object API .EXAMPLE $object = Get-AviRestUseraccountprofile $object.name = 'New name' Set-AviRestUseraccountprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseraccountprofile')]$Useraccountprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Useraccountprofile.uuid $global:body = ConvertTo-JSON $Useraccountprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/useraccountprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Useraccountprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUseraccountprofile } } } Function New-AVIRestUseraccountprofile { <# .SYNOPSIS Configure Avi UserAccountProfile Object API .EXAMPLE New-AviRestUseraccountprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseraccountprofile')]$Useraccountprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/useraccountprofile" Body = ConvertTo-JSON $Useraccountprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Useraccountprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUseraccountprofile } } } Function New-AVIRestUseraccountprofileObject { <# .SYNOPSIS Configure Avi UserAccountProfile Object API .EXAMPLE New-AviRestUseraccountprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUseraccountprofile') $result } } Function Remove-AVIRestUseraccountprofile { <# .SYNOPSIS Configure Avi UserAccountProfile Object API .EXAMPLE Get-AviRestUseraccountprofile | Remove-AviRestUseraccountprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Useraccountprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Useraccountprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseraccountprofile')]$Useraccountprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Useraccountprofile') { $uuid = $Useraccountprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/useraccountprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Useraccountprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestUseractivity { <# .SYNOPSIS Configure Avi UserActivity Object API .EXAMPLE Get-AviRestUseractivity .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'u', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/useractivity$Uuid" : '/api/useractivity' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestUseractivity } } Function Set-AVIRestUseractivity { <# .SYNOPSIS Configure Avi UserActivity Object API .EXAMPLE $object = Get-AviRestUseractivity $object.name = 'New name' Set-AviRestUseractivity $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseractivity')]$Useractivity ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Useractivity.uuid $global:body = ConvertTo-JSON $Useractivity -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/useractivity/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Useractivity.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestUseractivity } } } Function New-AVIRestUseractivity { <# .SYNOPSIS Configure Avi UserActivity Object API .EXAMPLE New-AviRestUseractivity .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseractivity')]$Useractivity ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/useractivity" Body = ConvertTo-JSON $Useractivity -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Useractivity.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestUseractivity } } } Function New-AVIRestUseractivityObject { <# .SYNOPSIS Configure Avi UserActivity Object API .EXAMPLE New-AviRestUseractivity .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestUseractivity') $result } } Function Remove-AVIRestUseractivity { <# .SYNOPSIS Configure Avi UserActivity Object API .EXAMPLE Get-AviRestUseractivity | Remove-AviRestUseractivity .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Useractivity')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Useractivity', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestUseractivity')]$Useractivity, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Useractivity') { $uuid = $Useractivity.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/useractivity/${uuid}" } if ($pscmdlet.ShouldProcess("$($Useractivity.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVcenterserver { <# .SYNOPSIS Configure Avi VCenterServer Object API .EXAMPLE Get-AviRestVcenterserver .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vcenterserver$Uuid" : '/api/vcenterserver' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVcenterserver } } Function Set-AVIRestVcenterserver { <# .SYNOPSIS Configure Avi VCenterServer Object API .EXAMPLE $object = Get-AviRestVcenterserver $object.name = 'New name' Set-AviRestVcenterserver $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVcenterserver')]$Vcenterserver ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vcenterserver.uuid $global:body = ConvertTo-JSON $Vcenterserver -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vcenterserver/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vcenterserver.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVcenterserver } } } Function New-AVIRestVcenterserver { <# .SYNOPSIS Configure Avi VCenterServer Object API .EXAMPLE New-AviRestVcenterserver .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVcenterserver')]$Vcenterserver ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vcenterserver" Body = ConvertTo-JSON $Vcenterserver -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vcenterserver.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVcenterserver } } } Function New-AVIRestVcenterserverObject { <# .SYNOPSIS Configure Avi VCenterServer Object API .EXAMPLE New-AviRestVcenterserver .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVcenterserver') $result } } Function Remove-AVIRestVcenterserver { <# .SYNOPSIS Configure Avi VCenterServer Object API .EXAMPLE Get-AviRestVcenterserver | Remove-AviRestVcenterserver .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vcenterserver')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vcenterserver', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVcenterserver')]$Vcenterserver, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vcenterserver') { $uuid = $Vcenterserver.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vcenterserver/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vcenterserver.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrvcenterdatacenters { <# .SYNOPSIS Configure Avi VIDCInfo Object API .EXAMPLE Get-AviRestVimgrvcenterdatacenters .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrvcenterdatacenters$Uuid" : '/api/vimgrvcenterdatacenters' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterdatacenters } } Function Set-AVIRestVimgrvcenterdatacenters { <# .SYNOPSIS Configure Avi VIDCInfo Object API .EXAMPLE $object = Get-AviRestVimgrvcenterdatacenters $object.name = 'New name' Set-AviRestVimgrvcenterdatacenters $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterdatacenters')]$Vimgrvcenterdatacenters ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrvcenterdatacenters.uuid $global:body = ConvertTo-JSON $Vimgrvcenterdatacenters -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrvcenterdatacenters/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterdatacenters.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterdatacenters } } } Function New-AVIRestVimgrvcenterdatacenters { <# .SYNOPSIS Configure Avi VIDCInfo Object API .EXAMPLE New-AviRestVimgrvcenterdatacenters .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterdatacenters')]$Vimgrvcenterdatacenters ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterdatacenters" Body = ConvertTo-JSON $Vimgrvcenterdatacenters -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterdatacenters.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterdatacenters } } } Function Remove-AVIRestVimgrvcenterdatacenters { <# .SYNOPSIS Configure Avi VIDCInfo Object API .EXAMPLE Get-AviRestVimgrvcenterdatacenters | Remove-AviRestVimgrvcenterdatacenters .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrvcenterdatacenters')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrvcenterdatacenters', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterdatacenters')]$Vimgrvcenterdatacenters, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrvcenterdatacenters') { $uuid = $Vimgrvcenterdatacenters.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrvcenterdatacenters/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterdatacenters.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrclusterruntime { <# .SYNOPSIS Configure Avi VIMgrClusterRuntime Object API .EXAMPLE Get-AviRestVimgrclusterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrclusterruntime$Uuid" : '/api/vimgrclusterruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrclusterruntime } } Function Set-AVIRestVimgrclusterruntime { <# .SYNOPSIS Configure Avi VIMgrClusterRuntime Object API .EXAMPLE $object = Get-AviRestVimgrclusterruntime $object.name = 'New name' Set-AviRestVimgrclusterruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrclusterruntime')]$Vimgrclusterruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrclusterruntime.uuid $global:body = ConvertTo-JSON $Vimgrclusterruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrclusterruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrclusterruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrclusterruntime } } } Function New-AVIRestVimgrclusterruntime { <# .SYNOPSIS Configure Avi VIMgrClusterRuntime Object API .EXAMPLE New-AviRestVimgrclusterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrclusterruntime')]$Vimgrclusterruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrclusterruntime" Body = ConvertTo-JSON $Vimgrclusterruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrclusterruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrclusterruntime } } } Function New-AVIRestVimgrclusterruntimeObject { <# .SYNOPSIS Configure Avi VIMgrClusterRuntime Object API .EXAMPLE New-AviRestVimgrclusterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrclusterruntime') $result } } Function Remove-AVIRestVimgrclusterruntime { <# .SYNOPSIS Configure Avi VIMgrClusterRuntime Object API .EXAMPLE Get-AviRestVimgrclusterruntime | Remove-AviRestVimgrclusterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrclusterruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrclusterruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrclusterruntime')]$Vimgrclusterruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrclusterruntime') { $uuid = $Vimgrclusterruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrclusterruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrclusterruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrcontrollerruntime { <# .SYNOPSIS Configure Avi VIMgrControllerRuntime Object API .EXAMPLE Get-AviRestVimgrcontrollerruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrcontrollerruntime$Uuid" : '/api/vimgrcontrollerruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrcontrollerruntime } } Function Set-AVIRestVimgrcontrollerruntime { <# .SYNOPSIS Configure Avi VIMgrControllerRuntime Object API .EXAMPLE $object = Get-AviRestVimgrcontrollerruntime $object.name = 'New name' Set-AviRestVimgrcontrollerruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrcontrollerruntime')]$Vimgrcontrollerruntime ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrcontrollerruntime.uuid $global:body = ConvertTo-JSON $Vimgrcontrollerruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrcontrollerruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrcontrollerruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrcontrollerruntime } } } Function New-AVIRestVimgrcontrollerruntime { <# .SYNOPSIS Configure Avi VIMgrControllerRuntime Object API .EXAMPLE New-AviRestVimgrcontrollerruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrcontrollerruntime')]$Vimgrcontrollerruntime ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrcontrollerruntime" Body = ConvertTo-JSON $Vimgrcontrollerruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrcontrollerruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrcontrollerruntime } } } Function New-AVIRestVimgrcontrollerruntimeObject { <# .SYNOPSIS Configure Avi VIMgrControllerRuntime Object API .EXAMPLE New-AviRestVimgrcontrollerruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrcontrollerruntime') $result } } Function Remove-AVIRestVimgrcontrollerruntime { <# .SYNOPSIS Configure Avi VIMgrControllerRuntime Object API .EXAMPLE Get-AviRestVimgrcontrollerruntime | Remove-AviRestVimgrcontrollerruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrcontrollerruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrcontrollerruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrcontrollerruntime')]$Vimgrcontrollerruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrcontrollerruntime') { $uuid = $Vimgrcontrollerruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrcontrollerruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrcontrollerruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrdcruntime { <# .SYNOPSIS Configure Avi VIMgrDCRuntime Object API .EXAMPLE Get-AviRestVimgrdcruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrdcruntime$Uuid" : '/api/vimgrdcruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrdcruntime } } Function Set-AVIRestVimgrdcruntime { <# .SYNOPSIS Configure Avi VIMgrDCRuntime Object API .EXAMPLE $object = Get-AviRestVimgrdcruntime $object.name = 'New name' Set-AviRestVimgrdcruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrdcruntime')]$Vimgrdcruntime ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrdcruntime.uuid $global:body = ConvertTo-JSON $Vimgrdcruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrdcruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrdcruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrdcruntime } } } Function New-AVIRestVimgrdcruntime { <# .SYNOPSIS Configure Avi VIMgrDCRuntime Object API .EXAMPLE New-AviRestVimgrdcruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrdcruntime')]$Vimgrdcruntime ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrdcruntime" Body = ConvertTo-JSON $Vimgrdcruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrdcruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrdcruntime } } } Function New-AVIRestVimgrdcruntimeObject { <# .SYNOPSIS Configure Avi VIMgrDCRuntime Object API .EXAMPLE New-AviRestVimgrdcruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrdcruntime') $result } } Function Remove-AVIRestVimgrdcruntime { <# .SYNOPSIS Configure Avi VIMgrDCRuntime Object API .EXAMPLE Get-AviRestVimgrdcruntime | Remove-AviRestVimgrdcruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrdcruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrdcruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrdcruntime')]$Vimgrdcruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrdcruntime') { $uuid = $Vimgrdcruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrdcruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrdcruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrhostruntime { <# .SYNOPSIS Configure Avi VIMgrHostRuntime Object API .EXAMPLE Get-AviRestVimgrhostruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrhostruntime$Uuid" : '/api/vimgrhostruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntime } } Function Set-AVIRestVimgrhostruntime { <# .SYNOPSIS Configure Avi VIMgrHostRuntime Object API .EXAMPLE $object = Get-AviRestVimgrhostruntime $object.name = 'New name' Set-AviRestVimgrhostruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntime')]$Vimgrhostruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrhostruntime.uuid $global:body = ConvertTo-JSON $Vimgrhostruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrhostruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrhostruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntime } } } Function New-AVIRestVimgrhostruntime { <# .SYNOPSIS Configure Avi VIMgrHostRuntime Object API .EXAMPLE New-AviRestVimgrhostruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntime')]$Vimgrhostruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrhostruntime" Body = ConvertTo-JSON $Vimgrhostruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrhostruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntime } } } Function New-AVIRestVimgrhostruntimeGetquarantinedhosts { <# .SYNOPSIS Configure Avi VIMgrHostRuntime Object API .EXAMPLE New-AviRestVimgrhostruntimeGetquarantinedhosts .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntimeGetquarantinedhosts')]$VimgrhostruntimeGetquarantinedhosts ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrhostruntime/getquarantinedhosts" Body = ConvertTo-JSON $VimgrhostruntimeGetquarantinedhosts -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrhostruntimeGetquarantinedhosts.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntimeGetquarantinedhosts } } } Function New-AVIRestVimgrhostruntimeObject { <# .SYNOPSIS Configure Avi VIMgrHostRuntime Object API .EXAMPLE New-AviRestVimgrhostruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrhostruntime') $result } } Function Invoke-AVIRestVimgrhostruntimeAccessible { <# .SYNOPSIS Configure Avi VIMgrHostRuntime Object API .EXAMPLE Invoke-AviRestVimgrhostruntimeAccessible .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntimeAccessible')]$VimgrhostruntimeAccessible ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VimgrhostruntimeAccessible.uuid $splat = @{ Method = 'POST' Endpoint = "/api/vimgrhostruntime/${uuid}/accessible" Body = ConvertTo-JSON $VimgrhostruntimeAccessible -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrhostruntimeAccessible.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrhostruntimeAccessible } } } Function Remove-AVIRestVimgrhostruntime { <# .SYNOPSIS Configure Avi VIMgrHostRuntime Object API .EXAMPLE Get-AviRestVimgrhostruntime | Remove-AviRestVimgrhostruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrhostruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrhostruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrhostruntime')]$Vimgrhostruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrhostruntime') { $uuid = $Vimgrhostruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrhostruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrhostruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi VIMgrNWRuntime Object API .EXAMPLE Get-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrnwruntime$Uuid" : '/api/vimgrnwruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrnwruntime } } Function Set-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi VIMgrNWRuntime Object API .EXAMPLE $object = Get-AviRestVimgrnwruntime $object.name = 'New name' Set-AviRestVimgrnwruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrnwruntime.uuid $global:body = ConvertTo-JSON $Vimgrnwruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrnwruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrnwruntime } } } Function New-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi VIMgrNWRuntime Object API .EXAMPLE New-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrnwruntime" Body = ConvertTo-JSON $Vimgrnwruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrnwruntime } } } Function New-AVIRestVimgrnwruntimeObject { <# .SYNOPSIS Configure Avi VIMgrNWRuntime Object API .EXAMPLE New-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrnwruntime') $result } } Function Remove-AVIRestVimgrnwruntime { <# .SYNOPSIS Configure Avi VIMgrNWRuntime Object API .EXAMPLE Get-AviRestVimgrnwruntime | Remove-AviRestVimgrnwruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrnwruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrnwruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrnwruntime')]$Vimgrnwruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrnwruntime') { $uuid = $Vimgrnwruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrnwruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrnwruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrsevmruntime { <# .SYNOPSIS Configure Avi VIMgrSEVMRuntime Object API .EXAMPLE Get-AviRestVimgrsevmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrsevmruntime$Uuid" : '/api/vimgrsevmruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrsevmruntime } } Function Set-AVIRestVimgrsevmruntime { <# .SYNOPSIS Configure Avi VIMgrSEVMRuntime Object API .EXAMPLE $object = Get-AviRestVimgrsevmruntime $object.name = 'New name' Set-AviRestVimgrsevmruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrsevmruntime')]$Vimgrsevmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrsevmruntime.uuid $global:body = ConvertTo-JSON $Vimgrsevmruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrsevmruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrsevmruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrsevmruntime } } } Function New-AVIRestVimgrsevmruntime { <# .SYNOPSIS Configure Avi VIMgrSEVMRuntime Object API .EXAMPLE New-AviRestVimgrsevmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrsevmruntime')]$Vimgrsevmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrsevmruntime" Body = ConvertTo-JSON $Vimgrsevmruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrsevmruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrsevmruntime } } } Function New-AVIRestVimgrsevmruntimeObject { <# .SYNOPSIS Configure Avi VIMgrSEVMRuntime Object API .EXAMPLE New-AviRestVimgrsevmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrsevmruntime') $result } } Function Remove-AVIRestVimgrsevmruntime { <# .SYNOPSIS Configure Avi VIMgrSEVMRuntime Object API .EXAMPLE Get-AviRestVimgrsevmruntime | Remove-AviRestVimgrsevmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrsevmruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrsevmruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrsevmruntime')]$Vimgrsevmruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrsevmruntime') { $uuid = $Vimgrsevmruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrsevmruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrsevmruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrvcenterruntime { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE Get-AviRestVimgrvcenterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'subfolders,datastores,hostresources,networksubnetvms,redis', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrvcenterruntime$Uuid" : '/api/vimgrvcenterruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntime } } Function Set-AVIRestVimgrvcenterruntime { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE $object = Get-AviRestVimgrvcenterruntime $object.name = 'New name' Set-AviRestVimgrvcenterruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntime')]$Vimgrvcenterruntime ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrvcenterruntime.uuid $global:body = ConvertTo-JSON $Vimgrvcenterruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrvcenterruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntime } } } Function New-AVIRestVimgrvcenterruntime { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntime')]$Vimgrvcenterruntime ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime" Body = ConvertTo-JSON $Vimgrvcenterruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntime } } } Function New-AVIRestVimgrvcenterruntimeSpawn { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeSpawn .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeSpawn')]$VimgrvcenterruntimeSpawn ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/spawn" Body = ConvertTo-JSON $VimgrvcenterruntimeSpawn -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeSpawn.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeSpawn } } } Function New-AVIRestVimgrvcenterruntimeRemove { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeRemove .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeRemove')]$VimgrvcenterruntimeRemove ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/remove" Body = ConvertTo-JSON $VimgrvcenterruntimeRemove -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeRemove.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeRemove } } } Function New-AVIRestVimgrvcenterruntimeSetmgmtip { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeSetmgmtip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeSetmgmtip')]$VimgrvcenterruntimeSetmgmtip ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/setmgmtip" Body = ConvertTo-JSON $VimgrvcenterruntimeSetmgmtip -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeSetmgmtip.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeSetmgmtip } } } Function New-AVIRestVimgrvcenterruntimeModifymgmtip { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeModifymgmtip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeModifymgmtip')]$VimgrvcenterruntimeModifymgmtip ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/modifymgmtip" Body = ConvertTo-JSON $VimgrvcenterruntimeModifymgmtip -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeModifymgmtip.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeModifymgmtip } } } Function New-AVIRestVimgrvcenterruntimeSetvnic { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeSetvnic .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeSetvnic')]$VimgrvcenterruntimeSetvnic ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/setvnic" Body = ConvertTo-JSON $VimgrvcenterruntimeSetvnic -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeSetvnic.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeSetvnic } } } Function New-AVIRestVimgrvcenterruntimeModifyvnic { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeModifyvnic .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeModifyvnic')]$VimgrvcenterruntimeModifyvnic ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/modifyvnic" Body = ConvertTo-JSON $VimgrvcenterruntimeModifyvnic -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeModifyvnic.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeModifyvnic } } } Function New-AVIRestVimgrvcenterruntimeRetrievevcenterdcnws { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeRetrievevcenterdcnws .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeRetrievevcenterdcnws')]$VimgrvcenterruntimeRetrievevcenterdcnws ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/retrievevcenterdcnws" Body = ConvertTo-JSON $VimgrvcenterruntimeRetrievevcenterdcnws -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeRetrievevcenterdcnws.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeRetrievevcenterdcnws } } } Function New-AVIRestVimgrvcenterruntimeRediscover { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeRediscover .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeRediscover')]$VimgrvcenterruntimeRediscover ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/rediscover" Body = ConvertTo-JSON $VimgrvcenterruntimeRediscover -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeRediscover.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeRediscover } } } Function New-AVIRestVimgrvcenterruntimeVerifylogin { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeVerifylogin .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeVerifylogin')]$VimgrvcenterruntimeVerifylogin ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/verifylogin" Body = ConvertTo-JSON $VimgrvcenterruntimeVerifylogin -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeVerifylogin.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeVerifylogin } } } Function New-AVIRestVimgrvcenterruntimeOsverifylogin { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeOsverifylogin .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeOsverifylogin')]$VimgrvcenterruntimeOsverifylogin ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/osverifylogin" Body = ConvertTo-JSON $VimgrvcenterruntimeOsverifylogin -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeOsverifylogin.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeOsverifylogin } } } Function New-AVIRestVimgrvcenterruntimeAwsverifylogin { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeAwsverifylogin .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeAwsverifylogin')]$VimgrvcenterruntimeAwsverifylogin ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/awsverifylogin" Body = ConvertTo-JSON $VimgrvcenterruntimeAwsverifylogin -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeAwsverifylogin.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeAwsverifylogin } } } Function New-AVIRestVimgrvcenterruntimeFaultinject { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeFaultinject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeFaultinject')]$VimgrvcenterruntimeFaultinject ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/faultinject" Body = ConvertTo-JSON $VimgrvcenterruntimeFaultinject -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeFaultinject.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeFaultinject } } } Function New-AVIRestVimgrvcenterruntimeDeletenetwork { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeDeletenetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeDeletenetwork')]$VimgrvcenterruntimeDeletenetwork ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/deletenetwork" Body = ConvertTo-JSON $VimgrvcenterruntimeDeletenetwork -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeDeletenetwork.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeDeletenetwork } } } Function New-AVIRestVimgrvcenterruntimeVcenterstatus { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeVcenterstatus .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeVcenterstatus')]$VimgrvcenterruntimeVcenterstatus ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/vcenterstatus" Body = ConvertTo-JSON $VimgrvcenterruntimeVcenterstatus -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeVcenterstatus.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeVcenterstatus } } } Function New-AVIRestVimgrvcenterruntimeVcenterdiag { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeVcenterdiag .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeVcenterdiag')]$VimgrvcenterruntimeVcenterdiag ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/vcenterdiag" Body = ConvertTo-JSON $VimgrvcenterruntimeVcenterdiag -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeVcenterdiag.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeVcenterdiag } } } Function New-AVIRestVimgrvcenterruntimeControlleripsubnets { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeControlleripsubnets .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeControlleripsubnets')]$VimgrvcenterruntimeControlleripsubnets ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/controlleripsubnets" Body = ConvertTo-JSON $VimgrvcenterruntimeControlleripsubnets -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeControlleripsubnets.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeControlleripsubnets } } } Function New-AVIRestVimgrvcenterruntimeGenevent { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeGenevent .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeGenevent')]$VimgrvcenterruntimeGenevent ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/genevent" Body = ConvertTo-JSON $VimgrvcenterruntimeGenevent -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeGenevent.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeGenevent } } } Function New-AVIRestVimgrvcenterruntimeObject { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvcenterruntime') $result } } Function New-AVIRestVimgrvcenterruntimeSetmgmtipObject { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeSetmgmtip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "ip_params": { "default_gw": "", "mgmt_ip_addr": "", "mgmt_ip_type": "", "mgmt_net_mask": "" }, "sevm_uuid": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "admin": { "name": "root", "password": "vmware", "privilege": "", "vcenter_url": "", "vi_mgr_token": "" }, "all_vnic_connected": false, "cloud_uuid": "", "dc_uuid": "", "ip_params": { "default_gw": "", "mgmt_ip_addr": "", "mgmt_ip_type": "", "mgmt_net_mask": "" }, "power_on": true, "rm_cookie": "", "sevm_uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvcenterruntimeSetmgmtip') $result } } Function New-AVIRestVimgrvcenterruntimeSetvnicObject { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeSetvnic .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "sevm_uuid": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "cloud_uuid": "", "dc_uuid": "", "rm_cookie": "", "sevm_uuid": "", "vcenter_admin": { "name": "root", "password": "vmware", "privilege": "", "vcenter_url": "", "vi_mgr_token": "" }, "vcenter_sevm_mor": "", "vcenter_vnic_info": [ { "mac_addr": "", "vcenter_portgroup": "", "vcenter_vnic_nw": "" } ] } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvcenterruntimeSetvnic') $result } } Function New-AVIRestVimgrvcenterruntimeRediscoverObject { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeRediscover .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "cloud": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "cloud": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvcenterruntimeRediscover') $result } } Function New-AVIRestVimgrvcenterruntimeFaultinjectObject { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeFaultinject .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "api": "", "count": 0 } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "api": "", "cloud_uuid": "", "count": 0, "network_uuid": "", "status": "SEVM_CREATE_FAILURE" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvcenterruntimeFaultinject') $result } } Function New-AVIRestVimgrvcenterruntimeDeletenetworkObject { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE New-AviRestVimgrvcenterruntimeDeletenetwork .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "cloud_uuid": "", "datacenter": "", "network_uuid": "", "vcenter_url": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvcenterruntimeDeletenetwork') $result } } Function Invoke-AVIRestVimgrvcenterruntimeGetnetworks { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE Invoke-AviRestVimgrvcenterruntimeGetnetworks .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntimeGetnetworks')]$VimgrvcenterruntimeGetnetworks ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VimgrvcenterruntimeGetnetworks.uuid $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenterruntime/${uuid}/getnetworks" Body = ConvertTo-JSON $VimgrvcenterruntimeGetnetworks -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VimgrvcenterruntimeGetnetworks.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenterruntimeGetnetworks } } } Function Remove-AVIRestVimgrvcenterruntime { <# .SYNOPSIS Configure Avi VIMgrVcenterRuntime Object API .EXAMPLE Get-AviRestVimgrvcenterruntime | Remove-AviRestVimgrvcenterruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrvcenterruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrvcenterruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenterruntime')]$Vimgrvcenterruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '22.1.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrvcenterruntime') { $uuid = $Vimgrvcenterruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrvcenterruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrvcenterruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrvmruntime { <# .SYNOPSIS Configure Avi VIMgrVMRuntime Object API .EXAMPLE Get-AviRestVimgrvmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrvmruntime$Uuid" : '/api/vimgrvmruntime' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrvmruntime } } Function Set-AVIRestVimgrvmruntime { <# .SYNOPSIS Configure Avi VIMgrVMRuntime Object API .EXAMPLE $object = Get-AviRestVimgrvmruntime $object.name = 'New name' Set-AviRestVimgrvmruntime $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvmruntime')]$Vimgrvmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrvmruntime.uuid $global:body = ConvertTo-JSON $Vimgrvmruntime -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrvmruntime/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrvmruntime.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvmruntime } } } Function New-AVIRestVimgrvmruntime { <# .SYNOPSIS Configure Avi VIMgrVMRuntime Object API .EXAMPLE New-AviRestVimgrvmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvmruntime')]$Vimgrvmruntime ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvmruntime" Body = ConvertTo-JSON $Vimgrvmruntime -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrvmruntime.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvmruntime } } } Function New-AVIRestVimgrvmruntimeObject { <# .SYNOPSIS Configure Avi VIMgrVMRuntime Object API .EXAMPLE New-AviRestVimgrvmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVimgrvmruntime') $result } } Function Remove-AVIRestVimgrvmruntime { <# .SYNOPSIS Configure Avi VIMgrVMRuntime Object API .EXAMPLE Get-AviRestVimgrvmruntime | Remove-AviRestVimgrvmruntime .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrvmruntime')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrvmruntime', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvmruntime')]$Vimgrvmruntime, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrvmruntime') { $uuid = $Vimgrvmruntime.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrvmruntime/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrvmruntime.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVimgrvcenternetworks { <# .SYNOPSIS Configure Avi VIPGNameInfo Object API .EXAMPLE Get-AviRestVimgrvcenternetworks .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vimgrvcenternetworks$Uuid" : '/api/vimgrvcenternetworks' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenternetworks } } Function Set-AVIRestVimgrvcenternetworks { <# .SYNOPSIS Configure Avi VIPGNameInfo Object API .EXAMPLE $object = Get-AviRestVimgrvcenternetworks $object.name = 'New name' Set-AviRestVimgrvcenternetworks $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenternetworks')]$Vimgrvcenternetworks ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vimgrvcenternetworks.uuid $global:body = ConvertTo-JSON $Vimgrvcenternetworks -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vimgrvcenternetworks/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vimgrvcenternetworks.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenternetworks } } } Function New-AVIRestVimgrvcenternetworks { <# .SYNOPSIS Configure Avi VIPGNameInfo Object API .EXAMPLE New-AviRestVimgrvcenternetworks .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenternetworks')]$Vimgrvcenternetworks ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vimgrvcenternetworks" Body = ConvertTo-JSON $Vimgrvcenternetworks -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vimgrvcenternetworks.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVimgrvcenternetworks } } } Function Remove-AVIRestVimgrvcenternetworks { <# .SYNOPSIS Configure Avi VIPGNameInfo Object API .EXAMPLE Get-AviRestVimgrvcenternetworks | Remove-AviRestVimgrvcenternetworks .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vimgrvcenternetworks')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vimgrvcenternetworks', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVimgrvcenternetworks')]$Vimgrvcenternetworks, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vimgrvcenternetworks') { $uuid = $Vimgrvcenternetworks.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vimgrvcenternetworks/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vimgrvcenternetworks.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Get-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'runtime,runtime/detail,runtime/internal,udpstat,tcpstat,sctpstat,traffic_clone_stats,dosstat,connections,httpconnections,httpconnections/detail,httpstats,authstats,httppolicyset,httppolicysetstats,dnspolicystats,networksecuritypolicystats,networksecuritypolicy/detail,candidatesehostlist,placement,keyval,keyvalsummary,keyvalsummaryobjsync,keyvaldispatch,keyvalsession,keyvalsessionsummary,sslsessioncache,cltrack,cltracksummary,client,clientsummary,dnstable,gslbservicedetail,gslbserviceinternal,gslbservicealgostat,gslbservicehmonstat,geolocationinfo,geodbinternal,gslbsiteinternal,userdefineddatascriptcounters,l4policysetstats,sescaleoutstatus,scaleoutstatus,scaleoutstatus/detail,ssopolicystats,icapstats,outofbandstats,botstats,placement/summary,placement/detail,placement/status', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/virtualservice$Uuid" : '/api/virtualservice' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVirtualservice } } Function Set-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE $object = Get-AviRestVirtualservice $object.name = 'New name' Set-AviRestVirtualservice $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Virtualservice.uuid $global:body = ConvertTo-JSON $Virtualservice -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/virtualservice/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualservice } } } Function New-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice" Body = ConvertTo-JSON $Virtualservice -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualservice } } } Function New-AVIRestVirtualserviceClear { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceClear')]$VirtualserviceClear ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/clear" Body = ConvertTo-JSON $VirtualserviceClear -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceClear.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceClear } } } Function New-AVIRestVirtualserviceObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualservice') $result } } Function New-AVIRestVirtualserviceClearObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceClear .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "ip_addr": "", "port": 0 } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceClear') $result } } Function Invoke-AVIRestVirtualserviceScaleout { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceScaleout .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceScaleout')]$VirtualserviceScaleout ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceScaleout.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/scaleout" Body = ConvertTo-JSON $VirtualserviceScaleout -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceScaleout.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceScaleout } } } Function Invoke-AVIRestVirtualserviceScalein { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceScalein .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceScalein')]$VirtualserviceScalein ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceScalein.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/scalein" Body = ConvertTo-JSON $VirtualserviceScalein -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceScalein.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceScalein } } } Function Invoke-AVIRestVirtualserviceMigrate { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceMigrate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceMigrate')]$VirtualserviceMigrate ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceMigrate.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/migrate" Body = ConvertTo-JSON $VirtualserviceMigrate -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceMigrate.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceMigrate } } } Function Invoke-AVIRestVirtualserviceSwitchover { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceSwitchover .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceSwitchover')]$VirtualserviceSwitchover ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceSwitchover.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/switchover" Body = ConvertTo-JSON $VirtualserviceSwitchover -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceSwitchover.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceSwitchover } } } Function Invoke-AVIRestVirtualserviceResync { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceResync .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceResync')]$VirtualserviceResync ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceResync.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/resync" Body = ConvertTo-JSON $VirtualserviceResync -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceResync.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceResync } } } Function Invoke-AVIRestVirtualserviceRotatekeys { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceRotatekeys .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceRotatekeys')]$VirtualserviceRotatekeys ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceRotatekeys.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/rotatekeys" Body = ConvertTo-JSON $VirtualserviceRotatekeys -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceRotatekeys.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceRotatekeys } } } Function Invoke-AVIRestVirtualserviceRetryplacement { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceRetryplacement .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceRetryplacement')]$VirtualserviceRetryplacement ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceRetryplacement.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/retryplacement" Body = ConvertTo-JSON $VirtualserviceRetryplacement -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceRetryplacement.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceRetryplacement } } } Function Invoke-AVIRestVirtualserviceLogRecommendation { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceLogRecommendation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceLogRecommendation')]$VirtualserviceLogRecommendation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceLogRecommendation.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/log-recommendation" Body = ConvertTo-JSON $VirtualserviceLogRecommendation -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceLogRecommendation.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceLogRecommendation } } } Function Invoke-AVIRestVirtualserviceApplyLogRecommendation { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Invoke-AviRestVirtualserviceApplyLogRecommendation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceApplyLogRecommendation')]$VirtualserviceApplyLogRecommendation ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceApplyLogRecommendation.uuid $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice/${uuid}/apply-log-recommendation" Body = ConvertTo-JSON $VirtualserviceApplyLogRecommendation -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceApplyLogRecommendation.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceApplyLogRecommendation } } } Function New-AVIRestVirtualserviceScaleoutObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceScaleout .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "vip_id": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "admin_up": false, "new_vcpus": 0, "to_host_ref": "", "to_new_se": false, "to_se_ref": "", "uuid": "", "vip_id": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceScaleout') $result } } Function New-AVIRestVirtualserviceScaleinObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceScalein .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "vip_id": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "admin_down": false, "from_se_ref": "", "scalein_primary": false, "uuid": "", "vip_id": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceScalein') $result } } Function New-AVIRestVirtualserviceMigrateObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceMigrate .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "vip_id": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "from_se_ref": "", "new_vcpus": 0, "to_host_ref": "", "to_new_se": false, "to_se_ref": "", "uuid": "", "vip_id": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceMigrate') $result } } Function New-AVIRestVirtualserviceSwitchoverObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceSwitchover .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "vip_id": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_uuid": "", "uuid": "", "vip_id": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceSwitchover') $result } } Function New-AVIRestVirtualserviceResyncObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceResync .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "se_ref": [ {} ], "uuid": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceResync') $result } } Function New-AVIRestVirtualserviceRetryplacementObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceRetryplacement .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' { "vip_id": "" } '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "all_east_west": false, "uuid": "", "vip_id": "" } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceRetryplacement') $result } } Function New-AVIRestVirtualserviceLogRecommendationObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceLogRecommendation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceLogRecommendation') $result } } Function New-AVIRestVirtualserviceApplyLogRecommendationObject { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE New-AviRestVirtualserviceApplyLogRecommendation .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' { "actions": [ { "data": "", "url_ref": "" } ] } '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVirtualserviceApplyLogRecommendation') $result } } Function Remove-AVIRestVirtualservice { <# .SYNOPSIS Configure Avi VirtualService Object API .EXAMPLE Get-AviRestVirtualservice | Remove-AviRestVirtualservice .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Virtualservice')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Virtualservice', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualservice')]$Virtualservice, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Virtualservice') { $uuid = $Virtualservice.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/virtualservice/${uuid}" } if ($pscmdlet.ShouldProcess("$($Virtualservice.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVrfcontext { <# .SYNOPSIS Configure Avi VrfContext Object API .EXAMPLE Get-AviRestVrfcontext .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vrfcontext$Uuid" : '/api/vrfcontext' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVrfcontext } } Function Set-AVIRestVrfcontext { <# .SYNOPSIS Configure Avi VrfContext Object API .EXAMPLE $object = Get-AviRestVrfcontext $object.name = 'New name' Set-AviRestVrfcontext $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVrfcontext')]$Vrfcontext ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vrfcontext.uuid $global:body = ConvertTo-JSON $Vrfcontext -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vrfcontext/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vrfcontext.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVrfcontext } } } Function New-AVIRestVrfcontext { <# .SYNOPSIS Configure Avi VrfContext Object API .EXAMPLE New-AviRestVrfcontext .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVrfcontext')]$Vrfcontext ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vrfcontext" Body = ConvertTo-JSON $Vrfcontext -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vrfcontext.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVrfcontext } } } Function New-AVIRestVrfcontextObject { <# .SYNOPSIS Configure Avi VrfContext Object API .EXAMPLE New-AviRestVrfcontext .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVrfcontext') $result } } Function Remove-AVIRestVrfcontext { <# .SYNOPSIS Configure Avi VrfContext Object API .EXAMPLE Get-AviRestVrfcontext | Remove-AviRestVrfcontext .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vrfcontext')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vrfcontext', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVrfcontext')]$Vrfcontext, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vrfcontext') { $uuid = $Vrfcontext.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vrfcontext/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vrfcontext.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVsdatascriptset { <# .SYNOPSIS Configure Avi VSDataScriptSet Object API .EXAMPLE Get-AviRestVsdatascriptset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vsdatascriptset$Uuid" : '/api/vsdatascriptset' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVsdatascriptset } } Function Set-AVIRestVsdatascriptset { <# .SYNOPSIS Configure Avi VSDataScriptSet Object API .EXAMPLE $object = Get-AviRestVsdatascriptset $object.name = 'New name' Set-AviRestVsdatascriptset $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsdatascriptset')]$Vsdatascriptset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vsdatascriptset.uuid $global:body = ConvertTo-JSON $Vsdatascriptset -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsdatascriptset/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vsdatascriptset.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsdatascriptset } } } Function New-AVIRestVsdatascriptset { <# .SYNOPSIS Configure Avi VSDataScriptSet Object API .EXAMPLE New-AviRestVsdatascriptset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsdatascriptset')]$Vsdatascriptset ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsdatascriptset" Body = ConvertTo-JSON $Vsdatascriptset -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vsdatascriptset.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsdatascriptset } } } Function New-AVIRestVsdatascriptsetObject { <# .SYNOPSIS Configure Avi VSDataScriptSet Object API .EXAMPLE New-AviRestVsdatascriptset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsdatascriptset') $result } } Function Remove-AVIRestVsdatascriptset { <# .SYNOPSIS Configure Avi VSDataScriptSet Object API .EXAMPLE Get-AviRestVsdatascriptset | Remove-AviRestVsdatascriptset .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vsdatascriptset')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vsdatascriptset', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsdatascriptset')]$Vsdatascriptset, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vsdatascriptset') { $uuid = $Vsdatascriptset.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsdatascriptset/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vsdatascriptset.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVsgs { <# .SYNOPSIS Configure Avi VsGs Object API .EXAMPLE Get-AviRestVsgs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vsgs$Uuid" : '/api/vsgs' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVsgs } } Function Set-AVIRestVsgs { <# .SYNOPSIS Configure Avi VsGs Object API .EXAMPLE $object = Get-AviRestVsgs $object.name = 'New name' Set-AviRestVsgs $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsgs')]$Vsgs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vsgs.uuid $global:body = ConvertTo-JSON $Vsgs -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsgs/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vsgs.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsgs } } } Function New-AVIRestVsgs { <# .SYNOPSIS Configure Avi VsGs Object API .EXAMPLE New-AviRestVsgs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsgs')]$Vsgs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsgs" Body = ConvertTo-JSON $Vsgs -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vsgs.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsgs } } } Function New-AVIRestVsgsObject { <# .SYNOPSIS Configure Avi VsGs Object API .EXAMPLE New-AviRestVsgs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsgs') $result } } Function Remove-AVIRestVsgs { <# .SYNOPSIS Configure Avi VsGs Object API .EXAMPLE Get-AviRestVsgs | Remove-AviRestVsgs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vsgs')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vsgs', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsgs')]$Vsgs, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vsgs') { $uuid = $Vsgs.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsgs/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vsgs.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVirtualserviceInventory { <# .SYNOPSIS Configure Avi VsInventory Object API .EXAMPLE Get-AviRestVirtualserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/virtualservice-inventory$Uuid" : '/api/virtualservice-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceInventory } } Function Set-AVIRestVirtualserviceInventory { <# .SYNOPSIS Configure Avi VsInventory Object API .EXAMPLE $object = Get-AviRestVirtualserviceInventory $object.name = 'New name' Set-AviRestVirtualserviceInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceInventory')]$VirtualserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VirtualserviceInventory.uuid $global:body = ConvertTo-JSON $VirtualserviceInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/virtualservice-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($VirtualserviceInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceInventory } } } Function New-AVIRestVirtualserviceInventory { <# .SYNOPSIS Configure Avi VsInventory Object API .EXAMPLE New-AviRestVirtualserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceInventory')]$VirtualserviceInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/virtualservice-inventory" Body = ConvertTo-JSON $VirtualserviceInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VirtualserviceInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVirtualserviceInventory } } } Function Remove-AVIRestVirtualserviceInventory { <# .SYNOPSIS Configure Avi VsInventory Object API .EXAMPLE Get-AviRestVirtualserviceInventory | Remove-AviRestVirtualserviceInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'VirtualserviceInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'VirtualserviceInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVirtualserviceInventory')]$VirtualserviceInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'VirtualserviceInventory') { $uuid = $VirtualserviceInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/virtualservice-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($VirtualserviceInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVsvip { <# .SYNOPSIS Configure Avi VsVip Object API .EXAMPLE Get-AviRestVsvip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vsvip$Uuid" : '/api/vsvip' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVsvip } } Function Set-AVIRestVsvip { <# .SYNOPSIS Configure Avi VsVip Object API .EXAMPLE $object = Get-AviRestVsvip $object.name = 'New name' Set-AviRestVsvip $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvip')]$Vsvip ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Vsvip.uuid $global:body = ConvertTo-JSON $Vsvip -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsvip/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Vsvip.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsvip } } } Function New-AVIRestVsvip { <# .SYNOPSIS Configure Avi VsVip Object API .EXAMPLE New-AviRestVsvip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvip')]$Vsvip ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsvip" Body = ConvertTo-JSON $Vsvip -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Vsvip.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsvip } } } Function New-AVIRestVsvipObject { <# .SYNOPSIS Configure Avi VsVip Object API .EXAMPLE New-AviRestVsvip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsvip') $result } } Function Remove-AVIRestVsvip { <# .SYNOPSIS Configure Avi VsVip Object API .EXAMPLE Get-AviRestVsvip | Remove-AviRestVsvip .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Vsvip')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Vsvip', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvip')]$Vsvip, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Vsvip') { $uuid = $Vsvip.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsvip/${uuid}" } if ($pscmdlet.ShouldProcess("$($Vsvip.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestVsvipInventory { <# .SYNOPSIS Configure Avi VsvipInventory Object API .EXAMPLE Get-AviRestVsvipInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'v', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/vsvip-inventory$Uuid" : '/api/vsvip-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestVsvipInventory } } Function Set-AVIRestVsvipInventory { <# .SYNOPSIS Configure Avi VsvipInventory Object API .EXAMPLE $object = Get-AviRestVsvipInventory $object.name = 'New name' Set-AviRestVsvipInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvipInventory')]$VsvipInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $VsvipInventory.uuid $global:body = ConvertTo-JSON $VsvipInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/vsvip-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($VsvipInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestVsvipInventory } } } Function New-AVIRestVsvipInventory { <# .SYNOPSIS Configure Avi VsvipInventory Object API .EXAMPLE New-AviRestVsvipInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvipInventory')]$VsvipInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/vsvip-inventory" Body = ConvertTo-JSON $VsvipInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($VsvipInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestVsvipInventory } } } Function New-AVIRestVsvipInventoryObject { <# .SYNOPSIS Configure Avi VsvipInventory Object API .EXAMPLE New-AviRestVsvipInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestVsvipInventory') $result } } Function Remove-AVIRestVsvipInventory { <# .SYNOPSIS Configure Avi VsvipInventory Object API .EXAMPLE Get-AviRestVsvipInventory | Remove-AviRestVsvipInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'VsvipInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'VsvipInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestVsvipInventory')]$VsvipInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'VsvipInventory') { $uuid = $VsvipInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/vsvip-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($VsvipInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWafapplicationsignatureprovider { <# .SYNOPSIS Configure Avi WafApplicationSignatureProvider Object API .EXAMPLE Get-AviRestWafapplicationsignatureprovider .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/wafapplicationsignatureprovider$Uuid" : '/api/wafapplicationsignatureprovider' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWafapplicationsignatureprovider } } Function Set-AVIRestWafapplicationsignatureprovider { <# .SYNOPSIS Configure Avi WafApplicationSignatureProvider Object API .EXAMPLE $object = Get-AviRestWafapplicationsignatureprovider $object.name = 'New name' Set-AviRestWafapplicationsignatureprovider $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafapplicationsignatureprovider')]$Wafapplicationsignatureprovider ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafapplicationsignatureprovider.uuid $global:body = ConvertTo-JSON $Wafapplicationsignatureprovider -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafapplicationsignatureprovider/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafapplicationsignatureprovider.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafapplicationsignatureprovider } } } Function New-AVIRestWafapplicationsignatureprovider { <# .SYNOPSIS Configure Avi WafApplicationSignatureProvider Object API .EXAMPLE New-AviRestWafapplicationsignatureprovider .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafapplicationsignatureprovider')]$Wafapplicationsignatureprovider ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafapplicationsignatureprovider" Body = ConvertTo-JSON $Wafapplicationsignatureprovider -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafapplicationsignatureprovider.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafapplicationsignatureprovider } } } Function New-AVIRestWafapplicationsignatureproviderObject { <# .SYNOPSIS Configure Avi WafApplicationSignatureProvider Object API .EXAMPLE New-AviRestWafapplicationsignatureprovider .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafapplicationsignatureprovider') $result } } Function Remove-AVIRestWafapplicationsignatureprovider { <# .SYNOPSIS Configure Avi WafApplicationSignatureProvider Object API .EXAMPLE Get-AviRestWafapplicationsignatureprovider | Remove-AviRestWafapplicationsignatureprovider .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafapplicationsignatureprovider')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafapplicationsignatureprovider', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafapplicationsignatureprovider')]$Wafapplicationsignatureprovider, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafapplicationsignatureprovider') { $uuid = $Wafapplicationsignatureprovider.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafapplicationsignatureprovider/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafapplicationsignatureprovider.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWafcrs { <# .SYNOPSIS Configure Avi WafCRS Object API .EXAMPLE Get-AviRestWafcrs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/wafcrs$Uuid" : '/api/wafcrs' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWafcrs } } Function Set-AVIRestWafcrs { <# .SYNOPSIS Configure Avi WafCRS Object API .EXAMPLE $object = Get-AviRestWafcrs $object.name = 'New name' Set-AviRestWafcrs $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafcrs')]$Wafcrs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafcrs.uuid $global:body = ConvertTo-JSON $Wafcrs -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafcrs/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafcrs.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafcrs } } } Function New-AVIRestWafcrs { <# .SYNOPSIS Configure Avi WafCRS Object API .EXAMPLE New-AviRestWafcrs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafcrs')]$Wafcrs ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafcrs" Body = ConvertTo-JSON $Wafcrs -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafcrs.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafcrs } } } Function New-AVIRestWafcrsObject { <# .SYNOPSIS Configure Avi WafCRS Object API .EXAMPLE New-AviRestWafcrs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafcrs') $result } } Function Remove-AVIRestWafcrs { <# .SYNOPSIS Configure Avi WafCRS Object API .EXAMPLE Get-AviRestWafcrs | Remove-AviRestWafcrs .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafcrs')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafcrs', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafcrs')]$Wafcrs, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafcrs') { $uuid = $Wafcrs.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafcrs/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafcrs.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWafpolicy { <# .SYNOPSIS Configure Avi WafPolicy Object API .EXAMPLE Get-AviRestWafpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/wafpolicy$Uuid" : '/api/wafpolicy' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWafpolicy } } Function Set-AVIRestWafpolicy { <# .SYNOPSIS Configure Avi WafPolicy Object API .EXAMPLE $object = Get-AviRestWafpolicy $object.name = 'New name' Set-AviRestWafpolicy $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicy')]$Wafpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafpolicy.uuid $global:body = ConvertTo-JSON $Wafpolicy -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicy/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafpolicy.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicy } } } Function Set-AVIRestWafpolicyUpdateCrsRules { <# .SYNOPSIS Configure Avi WafPolicy Object API .EXAMPLE $object = Get-AviRestWafpolicyUpdateCrsRules $object.name = 'New name' Set-AviRestWafpolicyUpdateCrsRules $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicyUpdateCrsRules')]$WafpolicyUpdateCrsRules ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $WafpolicyUpdateCrsRules.uuid $global:body = ConvertTo-JSON $WafpolicyUpdateCrsRules -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicy/${uuid}/update-crs-rules" Body = $body } if ($pscmdlet.ShouldProcess("$($WafpolicyUpdateCrsRules.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicyUpdateCrsRules } } } Function New-AVIRestWafpolicy { <# .SYNOPSIS Configure Avi WafPolicy Object API .EXAMPLE New-AviRestWafpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicy')]$Wafpolicy ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafpolicy" Body = ConvertTo-JSON $Wafpolicy -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafpolicy.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicy } } } Function New-AVIRestWafpolicyObject { <# .SYNOPSIS Configure Avi WafPolicy Object API .EXAMPLE New-AviRestWafpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafpolicy') $result } } Function Remove-AVIRestWafpolicy { <# .SYNOPSIS Configure Avi WafPolicy Object API .EXAMPLE Get-AviRestWafpolicy | Remove-AviRestWafpolicy .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafpolicy')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafpolicy', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicy')]$Wafpolicy, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafpolicy') { $uuid = $Wafpolicy.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafpolicy/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafpolicy.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWafpolicypsmgroup { <# .SYNOPSIS Configure Avi WafPolicyPSMGroup Object API .EXAMPLE Get-AviRestWafpolicypsmgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/wafpolicypsmgroup$Uuid" : '/api/wafpolicypsmgroup' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroup } } Function Set-AVIRestWafpolicypsmgroup { <# .SYNOPSIS Configure Avi WafPolicyPSMGroup Object API .EXAMPLE $object = Get-AviRestWafpolicypsmgroup $object.name = 'New name' Set-AviRestWafpolicypsmgroup $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroup')]$Wafpolicypsmgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafpolicypsmgroup.uuid $global:body = ConvertTo-JSON $Wafpolicypsmgroup -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicypsmgroup/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafpolicypsmgroup.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroup } } } Function New-AVIRestWafpolicypsmgroup { <# .SYNOPSIS Configure Avi WafPolicyPSMGroup Object API .EXAMPLE New-AviRestWafpolicypsmgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroup')]$Wafpolicypsmgroup ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafpolicypsmgroup" Body = ConvertTo-JSON $Wafpolicypsmgroup -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafpolicypsmgroup.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroup } } } Function New-AVIRestWafpolicypsmgroupObject { <# .SYNOPSIS Configure Avi WafPolicyPSMGroup Object API .EXAMPLE New-AviRestWafpolicypsmgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafpolicypsmgroup') $result } } Function Remove-AVIRestWafpolicypsmgroup { <# .SYNOPSIS Configure Avi WafPolicyPSMGroup Object API .EXAMPLE Get-AviRestWafpolicypsmgroup | Remove-AviRestWafpolicypsmgroup .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafpolicypsmgroup')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafpolicypsmgroup', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroup')]$Wafpolicypsmgroup, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafpolicypsmgroup') { $uuid = $Wafpolicypsmgroup.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafpolicypsmgroup/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafpolicypsmgroup.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWafpolicypsmgroupInventory { <# .SYNOPSIS Configure Avi WafPolicyPSMGroupInventory Object API .EXAMPLE Get-AviRestWafpolicypsmgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/wafpolicypsmgroup-inventory$Uuid" : '/api/wafpolicypsmgroup-inventory' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroupInventory } } Function Set-AVIRestWafpolicypsmgroupInventory { <# .SYNOPSIS Configure Avi WafPolicyPSMGroupInventory Object API .EXAMPLE $object = Get-AviRestWafpolicypsmgroupInventory $object.name = 'New name' Set-AviRestWafpolicypsmgroupInventory $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroupInventory')]$WafpolicypsmgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $WafpolicypsmgroupInventory.uuid $global:body = ConvertTo-JSON $WafpolicypsmgroupInventory -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafpolicypsmgroup-inventory/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($WafpolicypsmgroupInventory.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroupInventory } } } Function New-AVIRestWafpolicypsmgroupInventory { <# .SYNOPSIS Configure Avi WafPolicyPSMGroupInventory Object API .EXAMPLE New-AviRestWafpolicypsmgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroupInventory')]$WafpolicypsmgroupInventory ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafpolicypsmgroup-inventory" Body = ConvertTo-JSON $WafpolicypsmgroupInventory -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($WafpolicypsmgroupInventory.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafpolicypsmgroupInventory } } } Function New-AVIRestWafpolicypsmgroupInventoryObject { <# .SYNOPSIS Configure Avi WafPolicyPSMGroupInventory Object API .EXAMPLE New-AviRestWafpolicypsmgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafpolicypsmgroupInventory') $result } } Function Remove-AVIRestWafpolicypsmgroupInventory { <# .SYNOPSIS Configure Avi WafPolicyPSMGroupInventory Object API .EXAMPLE Get-AviRestWafpolicypsmgroupInventory | Remove-AviRestWafpolicypsmgroupInventory .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'WafpolicypsmgroupInventory')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'WafpolicypsmgroupInventory', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafpolicypsmgroupInventory')]$WafpolicypsmgroupInventory, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'WafpolicypsmgroupInventory') { $uuid = $WafpolicypsmgroupInventory.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafpolicypsmgroup-inventory/${uuid}" } if ($pscmdlet.ShouldProcess("$($WafpolicypsmgroupInventory.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWafprofile { <# .SYNOPSIS Configure Avi WafProfile Object API .EXAMPLE Get-AviRestWafprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/wafprofile$Uuid" : '/api/wafprofile' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWafprofile } } Function Set-AVIRestWafprofile { <# .SYNOPSIS Configure Avi WafProfile Object API .EXAMPLE $object = Get-AviRestWafprofile $object.name = 'New name' Set-AviRestWafprofile $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafprofile')]$Wafprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Wafprofile.uuid $global:body = ConvertTo-JSON $Wafprofile -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/wafprofile/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Wafprofile.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWafprofile } } } Function New-AVIRestWafprofile { <# .SYNOPSIS Configure Avi WafProfile Object API .EXAMPLE New-AviRestWafprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafprofile')]$Wafprofile ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/wafprofile" Body = ConvertTo-JSON $Wafprofile -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Wafprofile.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWafprofile } } } Function New-AVIRestWafprofileObject { <# .SYNOPSIS Configure Avi WafProfile Object API .EXAMPLE New-AviRestWafprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWafprofile') $result } } Function Remove-AVIRestWafprofile { <# .SYNOPSIS Configure Avi WafProfile Object API .EXAMPLE Get-AviRestWafprofile | Remove-AviRestWafprofile .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Wafprofile')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Wafprofile', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWafprofile')]$Wafprofile, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Wafprofile') { $uuid = $Wafprofile.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/wafprofile/${uuid}" } if ($pscmdlet.ShouldProcess("$($Wafprofile.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWebapput { <# .SYNOPSIS Configure Avi WebappUT Object API .EXAMPLE Get-AviRestWebapput .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/webapput$Uuid" : '/api/webapput' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWebapput } } Function Set-AVIRestWebapput { <# .SYNOPSIS Configure Avi WebappUT Object API .EXAMPLE $object = Get-AviRestWebapput $object.name = 'New name' Set-AviRestWebapput $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebapput')]$Webapput ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Webapput.uuid $global:body = ConvertTo-JSON $Webapput -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/webapput/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Webapput.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWebapput } } } Function New-AVIRestWebapput { <# .SYNOPSIS Configure Avi WebappUT Object API .EXAMPLE New-AviRestWebapput .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebapput')]$Webapput ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/webapput" Body = ConvertTo-JSON $Webapput -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Webapput.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWebapput } } } Function New-AVIRestWebapputObject { <# .SYNOPSIS Configure Avi WebappUT Object API .EXAMPLE New-AviRestWebapput .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWebapput') $result } } Function Remove-AVIRestWebapput { <# .SYNOPSIS Configure Avi WebappUT Object API .EXAMPLE Get-AviRestWebapput | Remove-AviRestWebapput .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Webapput')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Webapput', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebapput')]$Webapput, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Webapput') { $uuid = $Webapput.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/webapput/${uuid}" } if ($pscmdlet.ShouldProcess("$($Webapput.name)", "DELETE")) { Invoke-AVIRest @splat } } } Function Get-AVIRestWebhook { <# .SYNOPSIS Configure Avi Webhook Object API .EXAMPLE Get-AviRestWebhook .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( DefaultParameterSetName = 'Filter', SupportsPaging=$true)] Param ( [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$Name, [Parameter( Mandatory=$false, Position=0, ParameterSetName = 'Uuid', ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$Uuid, [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string]$JoinResource = 'w', [Parameter(Mandatory=$false)] [Parameter(ParameterSetName = 'Uuid')] [Parameter(ParameterSetName = 'Filter')] [ValidateNotNullOrEmpty()] [string[]]$Fields ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'GET' Endpoint = $Uuid ? "/api/webhook$Uuid" : '/api/webhook' } Add-AVIRestParams $splat $PSBoundParameters $PsCmdlet.ParameterSetName Invoke-AVIRest @splat -OutputType AVIRestWebhook } } Function Set-AVIRestWebhook { <# .SYNOPSIS Configure Avi Webhook Object API .EXAMPLE $object = Get-AviRestWebhook $object.name = 'New name' Set-AviRestWebhook $object .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Body')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Body', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebhook')]$Webhook ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $uuid = $Webhook.uuid $global:body = ConvertTo-JSON $Webhook -Depth 100 -Compress $splat = @{ Method = 'PUT' Endpoint = "/api/webhook/${uuid}" Body = $body } if ($pscmdlet.ShouldProcess("$($Webhook.name)", "PUT/EDIT")) { Invoke-AVIRest @splat -OutputType AVIRestWebhook } } } Function New-AVIRestWebhook { <# .SYNOPSIS Configure Avi Webhook Object API .EXAMPLE New-AviRestWebhook .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Object')] Param ( [Parameter(Mandatory=$true,ParameterSetName='Object')] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebhook')]$Webhook ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { $splat = @{ Method = 'POST' Endpoint = "/api/webhook" Body = ConvertTo-JSON $Webhook -Depth 100 -Compress } if ($pscmdlet.ShouldProcess("$($Webhook.name)", "POST")) { Invoke-AVIRest @splat -OutputType AVIRestWebhook } } } Function New-AVIRestWebhookObject { <# .SYNOPSIS Configure Avi Webhook Object API .EXAMPLE New-AviRestWebhook .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> Param ( [Switch]$MinRequired ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSBoundParameters.minRequired.isPresent) { $min = @' {} '@ $result = $min | ConvertFrom-JSON -Depth 100 } else { $full = @' {} '@ $result = $full | ConvertFrom-JSON -Depth 100 } $result.PSObject.TypeNames.Insert(0,'AVIRestWebhook') $result } } Function Remove-AVIRestWebhook { <# .SYNOPSIS Configure Avi Webhook Object API .EXAMPLE Get-AviRestWebhook | Remove-AviRestWebhook .NOTES Author: Andy Grant Website: www.linkedin.com/in/andybgrant/ #> [CmdletBinding( ConfirmImpact = 'High', SupportsShouldProcess = $true, DefaultParameterSetName = 'Webhook')] Param ( [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'Webhook', ValueFromPipeline = $true)] [ValidateNotNullOrEmpty()] [PSTypeName('AVIRestWebhook')]$Webhook, [Parameter( Mandatory=$true, Position=0, ParameterSetName = 'uuid')] [ValidateNotNullOrEmpty()] [string]$Uuid ) Begin { $swaggerVersion = '30.2.1' if ([version]$global:AVILbServerInfo.version.version -gt [version]$swaggerVersion) { $InvalidOperation = [System.Management.automation.ErrorRecord]::New( [System.Exception]::New("Requires AVI API revision [$swaggerVersion]"),0, [System.Management.Automation.ErrorCategory]::InvalidOperation,$PSCmdlet.CommandOrigin ) $PSCmdlet.ThrowTerminatingError($InvalidOperation) } } Process { if ($PSCmdlet.ParameterSetName -eq 'Webhook') { $uuid = $Webhook.uuid } $splat = @{ Method = 'DELETE' Endpoint = "/api/webhook/${uuid}" } if ($pscmdlet.ShouldProcess("$($Webhook.name)", "DELETE")) { Invoke-AVIRest @splat } } } Export-ModuleMember Connect-AVIRest,Disconnect-AVIRest,Get-AVIRestRef,Copy-AVIRestObject,Get-AVIRestActiongroupconfig,Set-AVIRestActiongroupconfig,New-AVIRestActiongroupconfig,New-AVIRestActiongroupconfigObject,Remove-AVIRestActiongroupconfig,Get-AVIRestAlbservicesconfig,Set-AVIRestAlbservicesconfig,New-AVIRestAlbservicesconfig,New-AVIRestAlbservicesconfigObject,Remove-AVIRestAlbservicesconfig,Get-AVIRestAlbservicesfileupload,Set-AVIRestAlbservicesfileupload,New-AVIRestAlbservicesfileupload,New-AVIRestAlbservicesfileuploadObject,Remove-AVIRestAlbservicesfileupload,Get-AVIRestAlbservicesjob,Set-AVIRestAlbservicesjob,New-AVIRestAlbservicesjob,New-AVIRestAlbservicesjobObject,Remove-AVIRestAlbservicesjob,Get-AVIRestAlert,Set-AVIRestAlert,Set-AVIRestDebugvirtualservice,Set-AVIRestUpgradestatusinfo,Set-AVIRestVirtualservice,Set-AVIRestAlbservicesfileupload,New-AVIRestAlert,New-AVIRestDebugvirtualservice,New-AVIRestUpgradestatusinfo,New-AVIRestVirtualservice,New-AVIRestAlbservicesfileupload,New-AVIRestAlertObject,New-AVIRestDebugvirtualserviceObject,New-AVIRestUpgradestatusinfoObject,New-AVIRestVirtualserviceObject,New-AVIRestAlbservicesfileuploadObject,Remove-AVIRestAlert,Remove-AVIRestDebugvirtualservice,Remove-AVIRestUpgradestatusinfo,Remove-AVIRestVirtualservice,Remove-AVIRestAlbservicesfileupload,Get-AVIRestAlertconfig,Set-AVIRestAlertconfig,New-AVIRestAlertconfig,New-AVIRestAlertconfigObject,Remove-AVIRestAlertconfig,Get-AVIRestAlertemailconfig,Set-AVIRestAlertemailconfig,New-AVIRestAlertemailconfig,New-AVIRestAlertemailconfigObject,Invoke-AVIRestAlertemailconfigTestemail,New-AVIRestAlertemailconfigTestemailObject,Remove-AVIRestAlertemailconfig,Get-AVIRestAlertobjectlist,Set-AVIRestAlertobjectlist,New-AVIRestAlertobjectlist,New-AVIRestAlertobjectlistObject,Remove-AVIRestAlertobjectlist,Get-AVIRestAlertscriptconfig,Set-AVIRestAlertscriptconfig,New-AVIRestAlertscriptconfig,New-AVIRestAlertscriptconfigObject,Remove-AVIRestAlertscriptconfig,Get-AVIRestAlertsyslogconfig,Set-AVIRestAlertsyslogconfig,New-AVIRestAlertsyslogconfig,New-AVIRestAlertsyslogconfigObject,Invoke-AVIRestAlertsyslogconfigTestsyslog,New-AVIRestAlertsyslogconfigTestsyslogObject,Remove-AVIRestAlertsyslogconfig,Get-AVIRestAnalyticsprofile,Set-AVIRestAnalyticsprofile,New-AVIRestAnalyticsprofile,New-AVIRestAnalyticsprofileObject,Remove-AVIRestAnalyticsprofile,Get-AVIRestAnalyticsAnomalyPool,Get-AVIRestApiclifsruntime,Set-AVIRestApiclifsruntime,New-AVIRestApiclifsruntime,New-AVIRestApiclifsruntimeObject,Remove-AVIRestApiclifsruntime,Get-AVIRestApplication,Set-AVIRestApplication,New-AVIRestApplication,New-AVIRestApplicationObject,Remove-AVIRestApplication,Get-AVIRestApplicationpersistenceprofile,Set-AVIRestApplicationpersistenceprofile,New-AVIRestApplicationpersistenceprofile,New-AVIRestApplicationpersistenceprofileObject,Remove-AVIRestApplicationpersistenceprofile,Get-AVIRestApplicationprofile,Set-AVIRestApplicationprofile,New-AVIRestApplicationprofile,New-AVIRestApplicationprofileObject,Remove-AVIRestApplicationprofile,Get-AVIRestAuthmappingprofile,Set-AVIRestAuthmappingprofile,New-AVIRestAuthmappingprofile,New-AVIRestAuthmappingprofileObject,Remove-AVIRestAuthmappingprofile,Get-AVIRestAuthprofile,Set-AVIRestAuthprofile,New-AVIRestAuthprofile,New-AVIRestAuthprofileObject,Remove-AVIRestAuthprofile,Get-AVIRestAutoscalelaunchconfig,Set-AVIRestAutoscalelaunchconfig,New-AVIRestAutoscalelaunchconfig,New-AVIRestAutoscalelaunchconfigObject,Remove-AVIRestAutoscalelaunchconfig,Get-AVIRestAvailabilityzone,Set-AVIRestAvailabilityzone,New-AVIRestAvailabilityzone,New-AVIRestAvailabilityzoneObject,Remove-AVIRestAvailabilityzone,Get-AVIRestNetworksecuritypolicy,Set-AVIRestNetworksecuritypolicy,Set-AVIRestFileobject,Set-AVIRestRole,Set-AVIRestTenant,Set-AVIRestUseractivity,Set-AVIRestUseraccountprofile,Set-AVIRestClusterclouddetails,Set-AVIRestApplicationprofile,Set-AVIRestPoolgroup,Set-AVIRestSslprofile,Set-AVIRestSslkeyandcertificate,Set-AVIRestPkiprofile,Set-AVIRestCertificatemanagementprofile,Set-AVIRestVrfcontext,Set-AVIRestWebapput,Set-AVIRestIcapprofile,Set-AVIRestLabelgroup,Set-AVIRestTrafficcloneprofile,Set-AVIRestGeodb,Set-AVIRestJobs,Set-AVIRestTestsedatastorelevel1,Set-AVIRestTestsedatastorelevel2,Set-AVIRestTestsedatastorelevel3,Set-AVIRestAnalyticsprofile,Set-AVIRestAlbservicesfileupload,Set-AVIRestSecurechannelmapping,Set-AVIRestSecurechannelavailablelocalips,Set-AVIRestSecurechanneltoken,Set-AVIRestMicroservice,Set-AVIRestCustomipamdnsprofile,Set-AVIRestJwtserverprofile,Set-AVIRestAuthprofile,Set-AVIRestAuthmappingprofile,Set-AVIRestWafpolicypsmgroup,Set-AVIRestBotdetectionpolicy,Set-AVIRestBotmapping,Set-AVIRestBotconfigconsolidator,Set-AVIRestBotipreputationtypemapping,Set-AVIRestDynamicdnsrecord,Set-AVIRestVsgs,Set-AVIRestServerautoscalepolicy,Set-AVIRestAutoscalelaunchconfig,Set-AVIRestControllerproperties,Set-AVIRestNetworkservice,Set-AVIRestLicensingStatus,Set-AVIRestAlbservicesconfig,Set-AVIRestPoolInventory,Set-AVIRestPoolgroupInventory,Set-AVIRestVsvipInventory,Set-AVIRestVirtualserviceInventory,Set-AVIRestServiceengineInventory,Set-AVIRestServiceenginegroupInventory,Set-AVIRestUpgradestatussummary,Set-AVIRestServiceenginegroup,Set-AVIRestNetworkInventory,Set-AVIRestNetworkruntime,Set-AVIRestVimgrnwruntime,Set-AVIRestCloudInventory,Set-AVIRestGslbInventory,Set-AVIRestGslbserviceInventory,Set-AVIRestWafpolicypsmgroupInventory,Set-AVIRestFederationcheckpointInventory,Set-AVIRestFederationcheckpoint,Set-AVIRestIpreputationdb,Set-AVIRestNetwork,Set-AVIRestIpaddrgroup,Set-AVIRestStringgroup,Set-AVIRestMicroservicegroup,Set-AVIRestWafcrs,Set-AVIRestSystemconfiguration,Set-AVIRestControllersite,Set-AVIRestCloudconnectoruser,Set-AVIRestSeproperties,Set-AVIRestCsrfpolicy,Set-AVIRestMemorybalancernotifier,Set-AVIRestVcenterserver,Set-AVIRestAvailabilityzone,Set-AVIRestNsxtsegmentruntime,Set-AVIRestStatediffoperation,Set-AVIRestApplicationpersistenceprofile,Set-AVIRestScvsstateinfo,Set-AVIRestScpoolserverstateinfo,Set-AVIRestAlbservicesjob,Set-AVIRestImage,Set-AVIRestCloud,Set-AVIRestCloudGc,Set-AVIRestCloudruntime,Set-AVIRestL4policyset,Set-AVIRestHealthmonitor,Set-AVIRestUpgradestatusinfo,Set-AVIRestCloudproperties,Set-AVIRestVsdatascriptset,Set-AVIRestControllerportalregistration,Set-AVIRestUser,Set-AVIRestNetworkprofile,Set-AVIRestDnspolicy,Set-AVIRestHardwaresecuritymodulegroup,Set-AVIRestLogcontroller,Set-AVIRestProtocolparser,Set-AVIRestScheduler,Set-AVIRestBackupconfiguration,Set-AVIRestVimgrsevmruntime,Set-AVIRestVimgrvmruntime,Set-AVIRestVimgrhostruntime,Set-AVIRestVimgrclusterruntime,Set-AVIRestVimgrvcenterdatacenters,Set-AVIRestVimgrvcenternetworks,Set-AVIRestServiceengine,Set-AVIRestWafpolicy,Set-AVIRestWafpolicyUpdateCrsRules,Set-AVIRestWafapplicationsignatureprovider,Set-AVIRestSsopolicy,Set-AVIRestNatpolicy,Set-AVIRestSiteversion,Set-AVIRestWebhook,Set-AVIRestPool,Set-AVIRestBackup,Set-AVIRestSecuritymanagerdata,Set-AVIRestVirtualservice,Set-AVIRestVsvip,Set-AVIRestIpamdnsproviderprofile,Set-AVIRestWafprofile,Set-AVIRestLicensingLedgerDetails,Set-AVIRestPingaccessagent,Set-AVIRestApplication,Set-AVIRestDebugserviceengine,Set-AVIRestDebugvirtualservice,Set-AVIRestPoolgroupdeploymentpolicy,Set-AVIRestHttppolicyset,Set-AVIRestSecuritypolicy,Set-AVIRestSnmptrapprofile,Set-AVIRestSystemlimits,Set-AVIRestPrioritylabels,Set-AVIRestGslb,Set-AVIRestGslbservice,Set-AVIRestGslbgeodbprofile,Set-AVIRestDebugcontroller,Set-AVIRestErrorpageprofile,Set-AVIRestErrorpagebody,Set-AVIRestAlertsyslogconfig,Set-AVIRestAlertemailconfig,Set-AVIRestAlertscriptconfig,Set-AVIRestAlertconfig,Set-AVIRestActiongroupconfig,Set-AVIRestAlertobjectlist,Set-AVIRestAlert,Set-AVIRestInventoryfaultconfig,Set-AVIRestTenantsystemconfiguration,New-AVIRestNetworksecuritypolicy,New-AVIRestFileobject,New-AVIRestRole,New-AVIRestTenant,New-AVIRestUseractivity,New-AVIRestUseraccountprofile,New-AVIRestClusterclouddetails,New-AVIRestApplicationprofile,New-AVIRestPoolgroup,New-AVIRestPoolgroupClear,New-AVIRestSslprofile,New-AVIRestSslkeyandcertificate,New-AVIRestPkiprofile,New-AVIRestCertificatemanagementprofile,New-AVIRestVrfcontext,New-AVIRestWebapput,New-AVIRestIcapprofile,New-AVIRestLabelgroup,New-AVIRestTrafficcloneprofile,New-AVIRestGeodb,New-AVIRestJobs,New-AVIRestTestsedatastorelevel1,New-AVIRestTestsedatastorelevel2,New-AVIRestTestsedatastorelevel3,New-AVIRestAnalyticsprofile,New-AVIRestAlbservicesfileupload,New-AVIRestSecurechannelmapping,New-AVIRestSecurechannelavailablelocalips,New-AVIRestSecurechanneltoken,New-AVIRestMicroservice,New-AVIRestCustomipamdnsprofile,New-AVIRestJwtserverprofile,New-AVIRestAuthprofile,New-AVIRestAuthmappingprofile,New-AVIRestWafpolicypsmgroup,New-AVIRestBotdetectionpolicy,New-AVIRestBotmapping,New-AVIRestBotconfigconsolidator,New-AVIRestBotipreputationtypemapping,New-AVIRestDynamicdnsrecord,New-AVIRestVsgs,New-AVIRestServerautoscalepolicy,New-AVIRestAutoscalelaunchconfig,New-AVIRestControllerproperties,New-AVIRestNetworkservice,New-AVIRestLicensingStatus,New-AVIRestAlbservicesconfig,New-AVIRestPoolInventory,New-AVIRestPoolgroupInventory,New-AVIRestVsvipInventory,New-AVIRestVirtualserviceInventory,New-AVIRestServiceengineInventory,New-AVIRestServiceenginegroupInventory,New-AVIRestUpgradestatussummary,New-AVIRestServiceenginegroup,New-AVIRestServiceenginegroupClear,New-AVIRestNetworkInventory,New-AVIRestNetworkruntime,New-AVIRestVimgrnwruntime,New-AVIRestCloudInventory,New-AVIRestGslbInventory,New-AVIRestGslbserviceInventory,New-AVIRestWafpolicypsmgroupInventory,New-AVIRestFederationcheckpointInventory,New-AVIRestFederationcheckpoint,New-AVIRestIpreputationdb,New-AVIRestNetwork,New-AVIRestIpaddrgroup,New-AVIRestStringgroup,New-AVIRestMicroservicegroup,New-AVIRestWafcrs,New-AVIRestSystemconfiguration,New-AVIRestSystemconfigurationSystestemail,New-AVIRestControllersite,New-AVIRestCloudconnectoruser,New-AVIRestSeproperties,New-AVIRestCsrfpolicy,New-AVIRestMemorybalancernotifier,New-AVIRestVcenterserver,New-AVIRestAvailabilityzone,New-AVIRestNsxtsegmentruntime,New-AVIRestStatediffoperation,New-AVIRestApplicationpersistenceprofile,New-AVIRestScvsstateinfo,New-AVIRestScpoolserverstateinfo,New-AVIRestAlbservicesjob,New-AVIRestImage,New-AVIRestCloud,New-AVIRestCloudList,New-AVIRestCloudruntime,New-AVIRestL4policyset,New-AVIRestHealthmonitor,New-AVIRestUpgradestatusinfo,New-AVIRestCloudproperties,New-AVIRestVsdatascriptset,New-AVIRestControllerportalregistration,New-AVIRestUser,New-AVIRestNetworkprofile,New-AVIRestDnspolicy,New-AVIRestHardwaresecuritymodulegroup,New-AVIRestLogcontroller,New-AVIRestProtocolparser,New-AVIRestScheduler,New-AVIRestBackupconfiguration,New-AVIRestVimgrsevmruntime,New-AVIRestVimgrvmruntime,New-AVIRestVimgrhostruntime,New-AVIRestVimgrhostruntimeGetquarantinedhosts,New-AVIRestVimgrclusterruntime,New-AVIRestVimgrvcenterdatacenters,New-AVIRestVimgrvcenternetworks,New-AVIRestServiceengine,New-AVIRestServiceengineClear,New-AVIRestWafpolicy,New-AVIRestWafapplicationsignatureprovider,New-AVIRestSsopolicy,New-AVIRestNatpolicy,New-AVIRestSiteversion,New-AVIRestWebhook,New-AVIRestPool,New-AVIRestPoolClear,New-AVIRestBackup,New-AVIRestSecuritymanagerdata,New-AVIRestVirtualservice,New-AVIRestVsvip,New-AVIRestIpamdnsproviderprofile,New-AVIRestWafprofile,New-AVIRestLicensingLedgerDetails,New-AVIRestPingaccessagent,New-AVIRestApplication,New-AVIRestDebugserviceengine,New-AVIRestDebugvirtualservice,New-AVIRestPoolgroupdeploymentpolicy,New-AVIRestHttppolicyset,New-AVIRestSecuritypolicy,New-AVIRestSnmptrapprofile,New-AVIRestSystemlimits,New-AVIRestPrioritylabels,New-AVIRestGslb,New-AVIRestGslbservice,New-AVIRestGslbgeodbprofile,New-AVIRestDebugcontroller,New-AVIRestErrorpageprofile,New-AVIRestErrorpagebody,New-AVIRestAlertsyslogconfig,New-AVIRestAlertemailconfig,New-AVIRestAlertscriptconfig,New-AVIRestAlertconfig,New-AVIRestActiongroupconfig,New-AVIRestAlertobjectlist,New-AVIRestAlert,New-AVIRestInventoryfaultconfig,New-AVIRestTenantsystemconfiguration,New-AVIRestNetworksecuritypolicyObject,New-AVIRestFileobjectObject,New-AVIRestRoleObject,New-AVIRestTenantObject,New-AVIRestUseractivityObject,New-AVIRestUseraccountprofileObject,New-AVIRestClusterclouddetailsObject,New-AVIRestApplicationprofileObject,New-AVIRestPoolgroupObject,New-AVIRestPoolgroupClearObject,New-AVIRestSslprofileObject,New-AVIRestSslkeyandcertificateObject,New-AVIRestPkiprofileObject,New-AVIRestCertificatemanagementprofileObject,New-AVIRestVrfcontextObject,New-AVIRestWebapputObject,New-AVIRestIcapprofileObject,New-AVIRestLabelgroupObject,New-AVIRestTrafficcloneprofileObject,New-AVIRestGeodbObject,New-AVIRestTestsedatastorelevel1Object,New-AVIRestTestsedatastorelevel2Object,New-AVIRestTestsedatastorelevel3Object,New-AVIRestAnalyticsprofileObject,New-AVIRestAlbservicesfileuploadObject,New-AVIRestSecurechannelmappingObject,New-AVIRestSecurechannelavailablelocalipsObject,New-AVIRestSecurechanneltokenObject,New-AVIRestMicroserviceObject,New-AVIRestCustomipamdnsprofileObject,New-AVIRestJwtserverprofileObject,New-AVIRestAuthprofileObject,New-AVIRestAuthmappingprofileObject,New-AVIRestWafpolicypsmgroupObject,New-AVIRestBotdetectionpolicyObject,New-AVIRestBotmappingObject,New-AVIRestBotconfigconsolidatorObject,New-AVIRestBotipreputationtypemappingObject,New-AVIRestDynamicdnsrecordObject,New-AVIRestVsgsObject,New-AVIRestServerautoscalepolicyObject,New-AVIRestAutoscalelaunchconfigObject,New-AVIRestControllerpropertiesObject,New-AVIRestNetworkserviceObject,New-AVIRestLicensingStatusObject,New-AVIRestAlbservicesconfigObject,New-AVIRestPoolInventoryObject,New-AVIRestPoolgroupInventoryObject,New-AVIRestVsvipInventoryObject,New-AVIRestServiceengineInventoryObject,New-AVIRestServiceenginegroupInventoryObject,New-AVIRestUpgradestatussummaryObject,New-AVIRestServiceenginegroupObject,New-AVIRestServiceenginegroupClearObject,New-AVIRestNetworkInventoryObject,New-AVIRestNetworkruntimeObject,New-AVIRestVimgrnwruntimeObject,New-AVIRestCloudInventoryObject,New-AVIRestGslbInventoryObject,New-AVIRestGslbserviceInventoryObject,New-AVIRestWafpolicypsmgroupInventoryObject,New-AVIRestFederationcheckpointInventoryObject,New-AVIRestFederationcheckpointObject,New-AVIRestIpreputationdbObject,New-AVIRestNetworkObject,New-AVIRestIpaddrgroupObject,New-AVIRestStringgroupObject,New-AVIRestMicroservicegroupObject,New-AVIRestWafcrsObject,New-AVIRestSystemconfigurationObject,New-AVIRestSystemconfigurationSystestemailObject,New-AVIRestControllersiteObject,New-AVIRestCloudconnectoruserObject,New-AVIRestSepropertiesObject,New-AVIRestCsrfpolicyObject,New-AVIRestVcenterserverObject,New-AVIRestAvailabilityzoneObject,New-AVIRestNsxtsegmentruntimeObject,New-AVIRestStatediffoperationObject,New-AVIRestApplicationpersistenceprofileObject,New-AVIRestScvsstateinfoObject,New-AVIRestScpoolserverstateinfoObject,New-AVIRestAlbservicesjobObject,New-AVIRestImageObject,New-AVIRestCloudObject,New-AVIRestCloudListObject,New-AVIRestCloudruntimeObject,New-AVIRestL4policysetObject,New-AVIRestHealthmonitorObject,New-AVIRestUpgradestatusinfoObject,New-AVIRestCloudpropertiesObject,New-AVIRestVsdatascriptsetObject,New-AVIRestControllerportalregistrationObject,New-AVIRestUserObject,New-AVIRestNetworkprofileObject,New-AVIRestDnspolicyObject,New-AVIRestHardwaresecuritymodulegroupObject,New-AVIRestLogcontrollerObject,New-AVIRestProtocolparserObject,New-AVIRestSchedulerObject,New-AVIRestBackupconfigurationObject,New-AVIRestVimgrsevmruntimeObject,New-AVIRestVimgrvmruntimeObject,New-AVIRestVimgrhostruntimeObject,New-AVIRestVimgrclusterruntimeObject,New-AVIRestServiceengineObject,New-AVIRestServiceengineClearObject,New-AVIRestWafpolicyObject,New-AVIRestWafapplicationsignatureproviderObject,New-AVIRestSsopolicyObject,New-AVIRestNatpolicyObject,New-AVIRestSiteversionObject,New-AVIRestWebhookObject,New-AVIRestPoolObject,New-AVIRestPoolClearObject,New-AVIRestBackupObject,New-AVIRestSecuritymanagerdataObject,New-AVIRestVirtualserviceObject,New-AVIRestVsvipObject,New-AVIRestIpamdnsproviderprofileObject,New-AVIRestWafprofileObject,New-AVIRestLicensingLedgerDetailsObject,New-AVIRestPingaccessagentObject,New-AVIRestApplicationObject,New-AVIRestDebugserviceengineObject,New-AVIRestDebugvirtualserviceObject,New-AVIRestPoolgroupdeploymentpolicyObject,New-AVIRestHttppolicysetObject,New-AVIRestSecuritypolicyObject,New-AVIRestSnmptrapprofileObject,New-AVIRestSystemlimitsObject,New-AVIRestPrioritylabelsObject,New-AVIRestGslbObject,New-AVIRestGslbserviceObject,New-AVIRestGslbgeodbprofileObject,New-AVIRestDebugcontrollerObject,New-AVIRestErrorpageprofileObject,New-AVIRestErrorpagebodyObject,New-AVIRestAlertsyslogconfigObject,New-AVIRestAlertemailconfigObject,New-AVIRestAlertscriptconfigObject,New-AVIRestAlertconfigObject,New-AVIRestActiongroupconfigObject,New-AVIRestAlertobjectlistObject,New-AVIRestAlertObject,New-AVIRestInventoryfaultconfigObject,New-AVIRestTenantsystemconfigurationObject,Invoke-AVIRestPoolgroupEnable_primary_poolClear,Invoke-AVIRestSslkeyandcertificateRenew,Invoke-AVIRestServiceenginegroupRedistribute,Invoke-AVIRestCloudconnectoruserTest,Invoke-AVIRestVimgrhostruntimeAccessible,Invoke-AVIRestServiceengineReboot,Invoke-AVIRestServiceengineForcedelete,Invoke-AVIRestServiceengineSwitchover,Invoke-AVIRestServiceengineFaultinjectExhaust_mbufClear,Invoke-AVIRestServiceengineFaultinjectExhaust_mclClear,Invoke-AVIRestServiceengineFaultinjectExhaust_mcl_smallClear,Invoke-AVIRestServiceengineFaultinjectExhaust_connClear,Invoke-AVIRestServiceengineFaultinjectExhaust_shm_connClear,Invoke-AVIRestServiceengineFaultinjectExhaust_cfgClear,Invoke-AVIRestServiceengineFaultinjectExhaust_shm_cfgClear,Invoke-AVIRestServiceengineFaultinjectSefaultClear,Invoke-AVIRestPoolScaleout,Invoke-AVIRestPoolScalein,Invoke-AVIRestPoolRuntimeStatsClear,Invoke-AVIRestPoolRuntimeRequest_queueClear,Invoke-AVIRestPoolConnpoolstatsClear,Invoke-AVIRestSnmptrapprofileTestsnmptrap,Invoke-AVIRestAlertsyslogconfigTestsyslog,Invoke-AVIRestAlertemailconfigTestemail,New-AVIRestPoolgroupEnable_primary_poolClearObject,New-AVIRestSslkeyandcertificateRenewObject,New-AVIRestCloudconnectoruserTestObject,New-AVIRestServiceengineRebootObject,New-AVIRestServiceengineSwitchoverObject,New-AVIRestServiceengineFaultinjectExhaust_mbufClearObject,New-AVIRestServiceengineFaultinjectExhaust_mclClearObject,New-AVIRestServiceengineFaultinjectExhaust_mcl_smallClearObject,New-AVIRestServiceengineFaultinjectExhaust_connClearObject,New-AVIRestServiceengineFaultinjectExhaust_shm_connClearObject,New-AVIRestServiceengineFaultinjectExhaust_cfgClearObject,New-AVIRestServiceengineFaultinjectExhaust_shm_cfgClearObject,New-AVIRestServiceengineFaultinjectSefaultClearObject,New-AVIRestPoolScaleoutObject,New-AVIRestPoolScaleinObject,New-AVIRestPoolRuntimeStatsClearObject,New-AVIRestPoolRuntimeRequest_queueClearObject,New-AVIRestPoolConnpoolstatsClearObject,New-AVIRestAlertsyslogconfigTestsyslogObject,New-AVIRestAlertemailconfigTestemailObject,Remove-AVIRestNetworksecuritypolicy,Remove-AVIRestFileobject,Remove-AVIRestRole,Remove-AVIRestTenant,Remove-AVIRestUseractivity,Remove-AVIRestUseraccountprofile,Remove-AVIRestClusterclouddetails,Remove-AVIRestApplicationprofile,Remove-AVIRestPoolgroup,Remove-AVIRestSslprofile,Remove-AVIRestSslkeyandcertificate,Remove-AVIRestPkiprofile,Remove-AVIRestCertificatemanagementprofile,Remove-AVIRestVrfcontext,Remove-AVIRestWebapput,Remove-AVIRestIcapprofile,Remove-AVIRestLabelgroup,Remove-AVIRestTrafficcloneprofile,Remove-AVIRestGeodb,Remove-AVIRestJobs,Remove-AVIRestTestsedatastorelevel1,Remove-AVIRestTestsedatastorelevel2,Remove-AVIRestTestsedatastorelevel3,Remove-AVIRestAnalyticsprofile,Remove-AVIRestAlbservicesfileupload,Remove-AVIRestSecurechannelmapping,Remove-AVIRestSecurechannelavailablelocalips,Remove-AVIRestSecurechanneltoken,Remove-AVIRestMicroservice,Remove-AVIRestCustomipamdnsprofile,Remove-AVIRestJwtserverprofile,Remove-AVIRestAuthprofile,Remove-AVIRestAuthmappingprofile,Remove-AVIRestWafpolicypsmgroup,Remove-AVIRestBotdetectionpolicy,Remove-AVIRestBotmapping,Remove-AVIRestBotconfigconsolidator,Remove-AVIRestBotipreputationtypemapping,Remove-AVIRestDynamicdnsrecord,Remove-AVIRestVsgs,Remove-AVIRestServerautoscalepolicy,Remove-AVIRestAutoscalelaunchconfig,Remove-AVIRestControllerproperties,Remove-AVIRestNetworkservice,Remove-AVIRestLicensingStatus,Remove-AVIRestAlbservicesconfig,Remove-AVIRestPoolInventory,Remove-AVIRestPoolgroupInventory,Remove-AVIRestVsvipInventory,Remove-AVIRestVirtualserviceInventory,Remove-AVIRestServiceengineInventory,Remove-AVIRestServiceenginegroupInventory,Remove-AVIRestUpgradestatussummary,Remove-AVIRestServiceenginegroup,Remove-AVIRestNetworkInventory,Remove-AVIRestNetworkruntime,Remove-AVIRestVimgrnwruntime,Remove-AVIRestCloudInventory,Remove-AVIRestGslbInventory,Remove-AVIRestGslbserviceInventory,Remove-AVIRestWafpolicypsmgroupInventory,Remove-AVIRestFederationcheckpointInventory,Remove-AVIRestFederationcheckpoint,Remove-AVIRestIpreputationdb,Remove-AVIRestNetwork,Remove-AVIRestIpaddrgroup,Remove-AVIRestStringgroup,Remove-AVIRestMicroservicegroup,Remove-AVIRestWafcrs,Remove-AVIRestSystemconfiguration,Remove-AVIRestControllersite,Remove-AVIRestCloudconnectoruser,Remove-AVIRestSeproperties,Remove-AVIRestCsrfpolicy,Remove-AVIRestMemorybalancernotifier,Remove-AVIRestVcenterserver,Remove-AVIRestAvailabilityzone,Remove-AVIRestNsxtsegmentruntime,Remove-AVIRestStatediffoperation,Remove-AVIRestApplicationpersistenceprofile,Remove-AVIRestScvsstateinfo,Remove-AVIRestScpoolserverstateinfo,Remove-AVIRestAlbservicesjob,Remove-AVIRestImage,Remove-AVIRestCloud,Remove-AVIRestCloudruntime,Remove-AVIRestL4policyset,Remove-AVIRestHealthmonitor,Remove-AVIRestUpgradestatusinfo,Remove-AVIRestCloudproperties,Remove-AVIRestVsdatascriptset,Remove-AVIRestControllerportalregistration,Remove-AVIRestUser,Remove-AVIRestNetworkprofile,Remove-AVIRestDnspolicy,Remove-AVIRestHardwaresecuritymodulegroup,Remove-AVIRestLogcontroller,Remove-AVIRestProtocolparser,Remove-AVIRestScheduler,Remove-AVIRestBackupconfiguration,Remove-AVIRestVimgrsevmruntime,Remove-AVIRestVimgrvmruntime,Remove-AVIRestVimgrhostruntime,Remove-AVIRestVimgrclusterruntime,Remove-AVIRestVimgrvcenterdatacenters,Remove-AVIRestVimgrvcenternetworks,Remove-AVIRestServiceengine,Remove-AVIRestWafpolicy,Remove-AVIRestWafapplicationsignatureprovider,Remove-AVIRestSsopolicy,Remove-AVIRestNatpolicy,Remove-AVIRestSiteversion,Remove-AVIRestWebhook,Remove-AVIRestPool,Remove-AVIRestBackup,Remove-AVIRestSecuritymanagerdata,Remove-AVIRestVirtualservice,Remove-AVIRestVsvip,Remove-AVIRestIpamdnsproviderprofile,Remove-AVIRestWafprofile,Remove-AVIRestLicensingLedgerDetails,Remove-AVIRestPingaccessagent,Remove-AVIRestApplication,Remove-AVIRestDebugserviceengine,Remove-AVIRestDebugvirtualservice,Remove-AVIRestPoolgroupdeploymentpolicy,Remove-AVIRestHttppolicyset,Remove-AVIRestSecuritypolicy,Remove-AVIRestSnmptrapprofile,Remove-AVIRestSystemlimits,Remove-AVIRestPrioritylabels,Remove-AVIRestGslb,Remove-AVIRestGslbservice,Remove-AVIRestGslbgeodbprofile,Remove-AVIRestDebugcontroller,Remove-AVIRestErrorpageprofile,Remove-AVIRestErrorpagebody,Remove-AVIRestAlertsyslogconfig,Remove-AVIRestAlertemailconfig,Remove-AVIRestAlertscriptconfig,Remove-AVIRestAlertconfig,Remove-AVIRestActiongroupconfig,Remove-AVIRestAlertobjectlist,Remove-AVIRestAlert,Remove-AVIRestInventoryfaultconfig,Remove-AVIRestTenantsystemconfiguration,Get-AVIRestBackup,Set-AVIRestBackup,New-AVIRestBackup,New-AVIRestBackupObject,Remove-AVIRestBackup,Get-AVIRestBackupconfiguration,Set-AVIRestBackupconfiguration,New-AVIRestBackupconfiguration,New-AVIRestBackupconfigurationObject,Remove-AVIRestBackupconfiguration,Get-AVIRestBotconfigconsolidator,Set-AVIRestBotconfigconsolidator,New-AVIRestBotconfigconsolidator,New-AVIRestBotconfigconsolidatorObject,Remove-AVIRestBotconfigconsolidator,Get-AVIRestBotdetectionpolicy,Set-AVIRestBotdetectionpolicy,New-AVIRestBotdetectionpolicy,New-AVIRestBotdetectionpolicyObject,Remove-AVIRestBotdetectionpolicy,Get-AVIRestBotipreputationtypemapping,Set-AVIRestBotipreputationtypemapping,New-AVIRestBotipreputationtypemapping,New-AVIRestBotipreputationtypemappingObject,Remove-AVIRestBotipreputationtypemapping,Get-AVIRestBotmapping,Set-AVIRestBotmapping,New-AVIRestBotmapping,New-AVIRestBotmappingObject,Remove-AVIRestBotmapping,Get-AVIRestCertificatemanagementprofile,Set-AVIRestCertificatemanagementprofile,New-AVIRestCertificatemanagementprofile,New-AVIRestCertificatemanagementprofileObject,Remove-AVIRestCertificatemanagementprofile,Get-AVIRestCloud,Set-AVIRestCloud,Set-AVIRestCloudGc,New-AVIRestCloud,New-AVIRestCloudList,New-AVIRestCloudObject,Remove-AVIRestCloud,Get-AVIRestCloudconnectoruser,Set-AVIRestCloudconnectoruser,New-AVIRestCloudconnectoruser,New-AVIRestCloudconnectoruserObject,Invoke-AVIRestCloudconnectoruserTest,New-AVIRestCloudconnectoruserTestObject,Remove-AVIRestCloudconnectoruser,Get-AVIRestCloudInventory,Set-AVIRestCloudInventory,New-AVIRestCloudInventory,New-AVIRestCloudInventoryObject,Remove-AVIRestCloudInventory,Get-AVIRestCloudproperties,Set-AVIRestCloudproperties,Set-AVIRestControllerproperties,New-AVIRestCloudproperties,New-AVIRestControllerproperties,New-AVIRestCloudpropertiesObject,New-AVIRestControllerpropertiesObject,Remove-AVIRestCloudproperties,Remove-AVIRestControllerproperties,Get-AVIRestCloudruntime,Set-AVIRestCloudruntime,New-AVIRestCloudruntime,New-AVIRestCloudruntimeObject,Remove-AVIRestCloudruntime,Get-AVIRestCluster,Set-AVIRestCluster,New-AVIRestCluster,New-AVIRestClusterObject,Remove-AVIRestCluster,Get-AVIRestClusterclouddetails,Set-AVIRestClusterclouddetails,New-AVIRestClusterclouddetails,New-AVIRestClusterclouddetailsObject,Remove-AVIRestClusterclouddetails,Get-AVIRestLicense,Set-AVIRestLicense,New-AVIRestLicense,New-AVIRestLicenseObject,Remove-AVIRestLicense,Get-AVIRestControllerportalregistration,Set-AVIRestControllerportalregistration,New-AVIRestControllerportalregistration,New-AVIRestControllerportalregistrationObject,Remove-AVIRestControllerportalregistration,Get-AVIRestControllerproperties,Set-AVIRestControllerproperties,Get-AVIRestControllersite,Set-AVIRestControllersite,New-AVIRestControllersite,New-AVIRestControllersiteObject,Remove-AVIRestControllersite,Get-AVIRestCsrfpolicy,Set-AVIRestCsrfpolicy,New-AVIRestCsrfpolicy,New-AVIRestCsrfpolicyObject,Remove-AVIRestCsrfpolicy,Get-AVIRestCustomerportalinfo,Set-AVIRestCustomerportalinfo,New-AVIRestCustomerportalinfo,New-AVIRestCustomerportalinfoObject,Remove-AVIRestCustomerportalinfo,Get-AVIRestCustomipamdnsprofile,Set-AVIRestCustomipamdnsprofile,New-AVIRestCustomipamdnsprofile,New-AVIRestCustomipamdnsprofileObject,Remove-AVIRestCustomipamdnsprofile,Get-AVIRestDebugcontroller,Set-AVIRestDebugcontroller,New-AVIRestDebugcontroller,New-AVIRestDebugcontrollerObject,Remove-AVIRestDebugcontroller,Get-AVIRestDebugserviceengine,Set-AVIRestDebugserviceengine,New-AVIRestDebugserviceengine,New-AVIRestDebugserviceengineObject,Remove-AVIRestDebugserviceengine,Get-AVIRestDebugvirtualservice,Set-AVIRestDebugvirtualservice,New-AVIRestDebugvirtualservice,New-AVIRestDebugvirtualserviceObject,Remove-AVIRestDebugvirtualservice,Get-AVIRestDnspolicy,Set-AVIRestDnspolicy,New-AVIRestDnspolicy,New-AVIRestDnspolicyObject,Remove-AVIRestDnspolicy,Get-AVIRestDynamicdnsrecord,Set-AVIRestDynamicdnsrecord,New-AVIRestDynamicdnsrecord,New-AVIRestDynamicdnsrecordObject,Remove-AVIRestDynamicdnsrecord,Get-AVIRestErrorpagebody,Set-AVIRestErrorpagebody,New-AVIRestErrorpagebody,New-AVIRestErrorpagebodyObject,Remove-AVIRestErrorpagebody,Get-AVIRestErrorpageprofile,Set-AVIRestErrorpageprofile,New-AVIRestErrorpageprofile,New-AVIRestErrorpageprofileObject,Remove-AVIRestErrorpageprofile,Get-AVIRestFederationcheckpoint,Set-AVIRestFederationcheckpoint,New-AVIRestFederationcheckpoint,New-AVIRestFederationcheckpointObject,Remove-AVIRestFederationcheckpoint,Get-AVIRestFederationcheckpointInventory,Set-AVIRestFederationcheckpointInventory,Set-AVIRestFederationcheckpoint,New-AVIRestFederationcheckpointInventory,New-AVIRestFederationcheckpoint,New-AVIRestFederationcheckpointInventoryObject,New-AVIRestFederationcheckpointObject,Remove-AVIRestFederationcheckpointInventory,Remove-AVIRestFederationcheckpoint,Get-AVIRestFileobject,Set-AVIRestFileobject,New-AVIRestFileobject,New-AVIRestFileobjectObject,Remove-AVIRestFileobject,Get-AVIRestGeodb,Set-AVIRestGeodb,New-AVIRestGeodb,New-AVIRestGeodbObject,Remove-AVIRestGeodb,Get-AVIRestGslb,Set-AVIRestGslb,New-AVIRestGslb,New-AVIRestGslbObject,Remove-AVIRestGslb,Get-AVIRestGslbgeodbprofile,Set-AVIRestGslbgeodbprofile,New-AVIRestGslbgeodbprofile,New-AVIRestGslbgeodbprofileObject,Remove-AVIRestGslbgeodbprofile,Get-AVIRestGslbInventory,Set-AVIRestGslbInventory,New-AVIRestGslbInventory,New-AVIRestGslbInventoryObject,Remove-AVIRestGslbInventory,Get-AVIRestGslbservice,Set-AVIRestGslbservice,New-AVIRestGslbservice,New-AVIRestGslbserviceObject,Remove-AVIRestGslbservice,Get-AVIRestGslbserviceInventory,Set-AVIRestGslbserviceInventory,New-AVIRestGslbserviceInventory,New-AVIRestGslbserviceInventoryObject,Remove-AVIRestGslbserviceInventory,Get-AVIRestHardwaresecuritymodulegroup,Set-AVIRestHardwaresecuritymodulegroup,New-AVIRestHardwaresecuritymodulegroup,New-AVIRestHardwaresecuritymodulegroupObject,Remove-AVIRestHardwaresecuritymodulegroup,Get-AVIRestHealthmonitor,Set-AVIRestHealthmonitor,New-AVIRestHealthmonitor,New-AVIRestHealthmonitorObject,Remove-AVIRestHealthmonitor,Get-AVIRestAnalyticsHealthscorePool,Get-AVIRestHttppolicyset,Set-AVIRestHttppolicyset,New-AVIRestHttppolicyset,New-AVIRestHttppolicysetObject,Remove-AVIRestHttppolicyset,Get-AVIRestIcapprofile,Set-AVIRestIcapprofile,New-AVIRestIcapprofile,New-AVIRestIcapprofileObject,Remove-AVIRestIcapprofile,Get-AVIRestImage,Set-AVIRestImage,New-AVIRestImage,New-AVIRestImageObject,Remove-AVIRestImage,Get-AVIRestInventoryfaultconfig,Set-AVIRestInventoryfaultconfig,New-AVIRestInventoryfaultconfig,New-AVIRestInventoryfaultconfigObject,Remove-AVIRestInventoryfaultconfig,Get-AVIRestIpaddrgroup,Set-AVIRestIpaddrgroup,New-AVIRestIpaddrgroup,New-AVIRestIpaddrgroupObject,Remove-AVIRestIpaddrgroup,Get-AVIRestIpamdnsproviderprofile,Set-AVIRestIpamdnsproviderprofile,New-AVIRestIpamdnsproviderprofile,New-AVIRestIpamdnsproviderprofileObject,Remove-AVIRestIpamdnsproviderprofile,Get-AVIRestIpreputationdb,Set-AVIRestIpreputationdb,New-AVIRestIpreputationdb,New-AVIRestIpreputationdbObject,Remove-AVIRestIpreputationdb,Get-AVIRestJobs,Set-AVIRestJobs,New-AVIRestJobs,Remove-AVIRestJobs,Get-AVIRestJwtprofile,Set-AVIRestJwtprofile,New-AVIRestJwtprofile,New-AVIRestJwtprofileObject,Remove-AVIRestJwtprofile,Get-AVIRestJwtserverprofile,Set-AVIRestJwtserverprofile,New-AVIRestJwtserverprofile,New-AVIRestJwtserverprofileObject,Remove-AVIRestJwtserverprofile,Get-AVIRestL4policyset,Set-AVIRestL4policyset,New-AVIRestL4policyset,New-AVIRestL4policysetObject,Remove-AVIRestL4policyset,Get-AVIRestLabelgroup,Set-AVIRestLabelgroup,New-AVIRestLabelgroup,New-AVIRestLabelgroupObject,Remove-AVIRestLabelgroup,Get-AVIRestLicensingLedgerDetails,Set-AVIRestLicensingLedgerDetails,New-AVIRestLicensingLedgerDetails,New-AVIRestLicensingLedgerDetailsObject,Remove-AVIRestLicensingLedgerDetails,Get-AVIRestLicensingStatus,Set-AVIRestLicensingStatus,New-AVIRestLicensingStatus,New-AVIRestLicensingStatusObject,Remove-AVIRestLicensingStatus,Get-AVIRestLogcontroller,Set-AVIRestLogcontroller,New-AVIRestLogcontroller,New-AVIRestLogcontrollerObject,Remove-AVIRestLogcontroller,Get-AVIRestMemorybalancernotifier,Set-AVIRestMemorybalancernotifier,New-AVIRestMemorybalancernotifier,Remove-AVIRestMemorybalancernotifier,Get-AVIRestAnalyticsMetricsController,New-AVIRestAnalyticsMetricsCollection,New-AVIRestAnalyticsMetricsCollectionObject,Get-AVIRestMicroservice,Set-AVIRestMicroservice,New-AVIRestMicroservice,New-AVIRestMicroserviceObject,Remove-AVIRestMicroservice,Get-AVIRestMicroservicegroup,Set-AVIRestMicroservicegroup,New-AVIRestMicroservicegroup,New-AVIRestMicroservicegroupObject,Remove-AVIRestMicroservicegroup,Get-AVIRestNatpolicy,Set-AVIRestNatpolicy,New-AVIRestNatpolicy,New-AVIRestNatpolicyObject,Remove-AVIRestNatpolicy,Get-AVIRestNetwork,Set-AVIRestNetwork,New-AVIRestNetwork,New-AVIRestNetworkObject,Remove-AVIRestNetwork,Get-AVIRestNetworkInventory,Set-AVIRestNetworkInventory,Set-AVIRestNetworkruntime,Set-AVIRestVimgrnwruntime,New-AVIRestNetworkInventory,New-AVIRestNetworkruntime,New-AVIRestVimgrnwruntime,New-AVIRestNetworkInventoryObject,New-AVIRestNetworkruntimeObject,New-AVIRestVimgrnwruntimeObject,Remove-AVIRestNetworkInventory,Remove-AVIRestNetworkruntime,Remove-AVIRestVimgrnwruntime,Get-AVIRestNetworkprofile,Set-AVIRestNetworkprofile,New-AVIRestNetworkprofile,New-AVIRestNetworkprofileObject,Remove-AVIRestNetworkprofile,Get-AVIRestNetworkruntime,Set-AVIRestNetworkruntime,New-AVIRestNetworkruntime,New-AVIRestNetworkruntimeObject,Remove-AVIRestNetworkruntime,Get-AVIRestNetworksecuritypolicy,Set-AVIRestNetworksecuritypolicy,New-AVIRestNetworksecuritypolicy,New-AVIRestNetworksecuritypolicyObject,Remove-AVIRestNetworksecuritypolicy,Get-AVIRestNetworkservice,Set-AVIRestNetworkservice,New-AVIRestNetworkservice,New-AVIRestNetworkserviceObject,Remove-AVIRestNetworkservice,Get-AVIRestNsxtsegmentruntime,Set-AVIRestNsxtsegmentruntime,New-AVIRestNsxtsegmentruntime,New-AVIRestNsxtsegmentruntimeObject,Remove-AVIRestNsxtsegmentruntime,Get-AVIRestObjectaccesspolicy,Set-AVIRestObjectaccesspolicy,New-AVIRestObjectaccesspolicy,New-AVIRestObjectaccesspolicyObject,Remove-AVIRestObjectaccesspolicy,Get-AVIRestPingaccessagent,Set-AVIRestPingaccessagent,New-AVIRestPingaccessagent,New-AVIRestPingaccessagentObject,Remove-AVIRestPingaccessagent,Get-AVIRestPkiprofile,Set-AVIRestPkiprofile,New-AVIRestPkiprofile,New-AVIRestPkiprofileObject,Remove-AVIRestPkiprofile,Get-AVIRestPool,Set-AVIRestPool,New-AVIRestPool,New-AVIRestPoolClear,New-AVIRestPoolObject,Invoke-AVIRestPoolScaleout,Invoke-AVIRestPoolScalein,Invoke-AVIRestPoolRuntimeStatsClear,Invoke-AVIRestPoolRuntimeRequest_queueClear,Invoke-AVIRestPoolConnpoolstatsClear,New-AVIRestPoolScaleoutObject,New-AVIRestPoolScaleinObject,Remove-AVIRestPool,Get-AVIRestPoolgroup,Set-AVIRestPoolgroup,New-AVIRestPoolgroup,New-AVIRestPoolgroupClear,New-AVIRestPoolgroupObject,Invoke-AVIRestPoolgroupEnable_primary_poolClear,Remove-AVIRestPoolgroup,Get-AVIRestPoolgroupdeploymentpolicy,Set-AVIRestPoolgroupdeploymentpolicy,New-AVIRestPoolgroupdeploymentpolicy,New-AVIRestPoolgroupdeploymentpolicyObject,Remove-AVIRestPoolgroupdeploymentpolicy,Get-AVIRestPoolgroupInventory,Set-AVIRestPoolgroupInventory,New-AVIRestPoolgroupInventory,New-AVIRestPoolgroupInventoryObject,Remove-AVIRestPoolgroupInventory,Get-AVIRestPoolInventory,Set-AVIRestPoolInventory,New-AVIRestPoolInventory,New-AVIRestPoolInventoryObject,Remove-AVIRestPoolInventory,Get-AVIRestPortalfileupload,Set-AVIRestPortalfileupload,New-AVIRestPortalfileupload,New-AVIRestPortalfileuploadObject,Remove-AVIRestPortalfileupload,Get-AVIRestPrioritylabels,Set-AVIRestPrioritylabels,New-AVIRestPrioritylabels,New-AVIRestPrioritylabelsObject,Remove-AVIRestPrioritylabels,Get-AVIRestProtocolparser,Set-AVIRestProtocolparser,New-AVIRestProtocolparser,New-AVIRestProtocolparserObject,Remove-AVIRestProtocolparser,Get-AVIRestRole,Set-AVIRestRole,New-AVIRestRole,New-AVIRestRoleObject,Remove-AVIRestRole,Get-AVIRestScheduler,Set-AVIRestScheduler,New-AVIRestScheduler,New-AVIRestSchedulerObject,Remove-AVIRestScheduler,Get-AVIRestScpoolserverstateinfo,Set-AVIRestScpoolserverstateinfo,New-AVIRestScpoolserverstateinfo,New-AVIRestScpoolserverstateinfoObject,Remove-AVIRestScpoolserverstateinfo,Get-AVIRestScvsstateinfo,Set-AVIRestScvsstateinfo,New-AVIRestScvsstateinfo,New-AVIRestScvsstateinfoObject,Remove-AVIRestScvsstateinfo,Get-AVIRestSecurechannelavailablelocalips,Set-AVIRestSecurechannelavailablelocalips,New-AVIRestSecurechannelavailablelocalips,New-AVIRestSecurechannelavailablelocalipsObject,Remove-AVIRestSecurechannelavailablelocalips,Get-AVIRestSecurechannelmapping,Set-AVIRestSecurechannelmapping,New-AVIRestSecurechannelmapping,New-AVIRestSecurechannelmappingObject,Remove-AVIRestSecurechannelmapping,Get-AVIRestSecurechanneltoken,Set-AVIRestSecurechanneltoken,New-AVIRestSecurechanneltoken,New-AVIRestSecurechanneltokenObject,Remove-AVIRestSecurechanneltoken,Get-AVIRestSecuritymanagerdata,Set-AVIRestSecuritymanagerdata,New-AVIRestSecuritymanagerdata,New-AVIRestSecuritymanagerdataObject,Remove-AVIRestSecuritymanagerdata,Get-AVIRestSecuritypolicy,Set-AVIRestSecuritypolicy,New-AVIRestSecuritypolicy,New-AVIRestSecuritypolicyObject,Remove-AVIRestSecuritypolicy,Get-AVIRestSeproperties,Set-AVIRestSeproperties,Get-AVIRestServerautoscalepolicy,Set-AVIRestServerautoscalepolicy,New-AVIRestServerautoscalepolicy,New-AVIRestServerautoscalepolicyObject,Remove-AVIRestServerautoscalepolicy,Get-AVIRestServiceengine,Set-AVIRestServiceengine,New-AVIRestServiceengine,New-AVIRestServiceengineClear,New-AVIRestServiceengineObject,New-AVIRestServiceengineClearObject,Invoke-AVIRestServiceengineReboot,Invoke-AVIRestServiceengineForcedelete,Invoke-AVIRestServiceengineSwitchover,Invoke-AVIRestServiceengineFaultinjectExhaust_mbufClear,Invoke-AVIRestServiceengineFaultinjectExhaust_mclClear,Invoke-AVIRestServiceengineFaultinjectExhaust_mcl_smallClear,Invoke-AVIRestServiceengineFaultinjectExhaust_connClear,Invoke-AVIRestServiceengineFaultinjectExhaust_shm_connClear,Invoke-AVIRestServiceengineFaultinjectExhaust_cfgClear,Invoke-AVIRestServiceengineFaultinjectExhaust_shm_cfgClear,Invoke-AVIRestServiceengineFaultinjectSefaultClear,New-AVIRestServiceengineFaultinjectExhaust_mbufClearObject,New-AVIRestServiceengineFaultinjectExhaust_mclClearObject,New-AVIRestServiceengineFaultinjectExhaust_mcl_smallClearObject,New-AVIRestServiceengineFaultinjectExhaust_connClearObject,New-AVIRestServiceengineFaultinjectExhaust_shm_connClearObject,New-AVIRestServiceengineFaultinjectExhaust_cfgClearObject,New-AVIRestServiceengineFaultinjectExhaust_shm_cfgClearObject,New-AVIRestServiceengineFaultinjectSefaultClearObject,Remove-AVIRestServiceengine,Get-AVIRestServiceenginegroup,Set-AVIRestServiceenginegroup,New-AVIRestServiceenginegroup,New-AVIRestServiceenginegroupClear,New-AVIRestServiceenginegroupObject,Invoke-AVIRestServiceenginegroupRedistribute,Remove-AVIRestServiceenginegroup,Get-AVIRestServiceenginegroupInventory,Set-AVIRestServiceenginegroupInventory,Set-AVIRestUpgradestatussummary,Set-AVIRestServiceenginegroup,New-AVIRestServiceenginegroupInventory,New-AVIRestUpgradestatussummary,New-AVIRestServiceenginegroup,New-AVIRestServiceenginegroupInventoryObject,New-AVIRestUpgradestatussummaryObject,New-AVIRestServiceenginegroupObject,Remove-AVIRestServiceenginegroupInventory,Remove-AVIRestUpgradestatussummary,Remove-AVIRestServiceenginegroup,Get-AVIRestServiceengineInventory,Set-AVIRestServiceengineInventory,New-AVIRestServiceengineInventory,New-AVIRestServiceengineInventoryObject,Remove-AVIRestServiceengineInventory,Get-AVIRestServiceenginepolicy,Set-AVIRestServiceenginepolicy,New-AVIRestServiceenginepolicy,New-AVIRestServiceenginepolicyObject,Remove-AVIRestServiceenginepolicy,Get-AVIRestSiteversion,Set-AVIRestSiteversion,New-AVIRestSiteversion,New-AVIRestSiteversionObject,Remove-AVIRestSiteversion,Get-AVIRestSnmptrapprofile,Set-AVIRestSnmptrapprofile,New-AVIRestSnmptrapprofile,New-AVIRestSnmptrapprofileObject,Invoke-AVIRestSnmptrapprofileTestsnmptrap,Remove-AVIRestSnmptrapprofile,Get-AVIRestSslkeyandcertificate,Set-AVIRestSslkeyandcertificate,New-AVIRestSslkeyandcertificate,New-AVIRestSslkeyandcertificateObject,Invoke-AVIRestSslkeyandcertificateRenew,Remove-AVIRestSslkeyandcertificate,Get-AVIRestSslprofile,Set-AVIRestSslprofile,New-AVIRestSslprofile,New-AVIRestSslprofileObject,Remove-AVIRestSslprofile,Get-AVIRestSsopolicy,Set-AVIRestSsopolicy,New-AVIRestSsopolicy,New-AVIRestSsopolicyObject,Remove-AVIRestSsopolicy,Get-AVIRestStatediffoperation,Set-AVIRestStatediffoperation,New-AVIRestStatediffoperation,New-AVIRestStatediffoperationObject,Remove-AVIRestStatediffoperation,Get-AVIRestStatediffoperation,Set-AVIRestStatediffoperation,New-AVIRestStatediffoperation,Remove-AVIRestStatediffoperation,Get-AVIRestStringgroup,Set-AVIRestStringgroup,New-AVIRestStringgroup,New-AVIRestStringgroupObject,Remove-AVIRestStringgroup,Get-AVIRestSystemconfiguration,Set-AVIRestSystemconfiguration,New-AVIRestSystemconfigurationSystestemail,New-AVIRestSystemconfigurationSystestemailObject,Get-AVIRestSystemlimits,Set-AVIRestSystemlimits,New-AVIRestSystemlimits,New-AVIRestSystemlimitsObject,Remove-AVIRestSystemlimits,Get-AVIRestTenant,Set-AVIRestTenant,New-AVIRestTenant,New-AVIRestTenantObject,Remove-AVIRestTenant,Get-AVIRestTenantsystemconfiguration,Set-AVIRestTenantsystemconfiguration,New-AVIRestTenantsystemconfiguration,New-AVIRestTenantsystemconfigurationObject,Remove-AVIRestTenantsystemconfiguration,Get-AVIRestTestsedatastorelevel1,Set-AVIRestTestsedatastorelevel1,New-AVIRestTestsedatastorelevel1,New-AVIRestTestsedatastorelevel1Object,Remove-AVIRestTestsedatastorelevel1,Get-AVIRestTestsedatastorelevel2,Set-AVIRestTestsedatastorelevel2,New-AVIRestTestsedatastorelevel2,New-AVIRestTestsedatastorelevel2Object,Remove-AVIRestTestsedatastorelevel2,Get-AVIRestTestsedatastorelevel3,Set-AVIRestTestsedatastorelevel3,New-AVIRestTestsedatastorelevel3,New-AVIRestTestsedatastorelevel3Object,Remove-AVIRestTestsedatastorelevel3,Get-AVIRestTrafficcloneprofile,Set-AVIRestTrafficcloneprofile,New-AVIRestTrafficcloneprofile,New-AVIRestTrafficcloneprofileObject,Remove-AVIRestTrafficcloneprofile,Get-AVIRestUpgradestatusinfo,Set-AVIRestUpgradestatusinfo,New-AVIRestUpgradestatusinfo,New-AVIRestUpgradestatusinfoObject,Remove-AVIRestUpgradestatusinfo,Get-AVIRestUpgradestatusinfo,Set-AVIRestUpgradestatusinfo,New-AVIRestUpgradestatusinfo,Remove-AVIRestUpgradestatusinfo,Get-AVIRestUser,Set-AVIRestUser,New-AVIRestUser,New-AVIRestUserObject,Remove-AVIRestUser,Get-AVIRestUseraccountprofile,Set-AVIRestUseraccountprofile,New-AVIRestUseraccountprofile,New-AVIRestUseraccountprofileObject,Remove-AVIRestUseraccountprofile,Get-AVIRestUseractivity,Set-AVIRestUseractivity,New-AVIRestUseractivity,New-AVIRestUseractivityObject,Remove-AVIRestUseractivity,Get-AVIRestVcenterserver,Set-AVIRestVcenterserver,New-AVIRestVcenterserver,New-AVIRestVcenterserverObject,Remove-AVIRestVcenterserver,Get-AVIRestVimgrvcenterdatacenters,Set-AVIRestVimgrvcenterdatacenters,New-AVIRestVimgrvcenterdatacenters,Remove-AVIRestVimgrvcenterdatacenters,Get-AVIRestVimgrclusterruntime,Set-AVIRestVimgrclusterruntime,New-AVIRestVimgrclusterruntime,New-AVIRestVimgrclusterruntimeObject,Remove-AVIRestVimgrclusterruntime,Get-AVIRestVimgrcontrollerruntime,Set-AVIRestVimgrcontrollerruntime,New-AVIRestVimgrcontrollerruntime,New-AVIRestVimgrcontrollerruntimeObject,Remove-AVIRestVimgrcontrollerruntime,Get-AVIRestVimgrdcruntime,Set-AVIRestVimgrdcruntime,New-AVIRestVimgrdcruntime,New-AVIRestVimgrdcruntimeObject,Remove-AVIRestVimgrdcruntime,Get-AVIRestVimgrhostruntime,Set-AVIRestVimgrhostruntime,New-AVIRestVimgrhostruntime,New-AVIRestVimgrhostruntimeGetquarantinedhosts,New-AVIRestVimgrhostruntimeObject,Invoke-AVIRestVimgrhostruntimeAccessible,Remove-AVIRestVimgrhostruntime,Get-AVIRestVimgrnwruntime,Set-AVIRestVimgrnwruntime,New-AVIRestVimgrnwruntime,New-AVIRestVimgrnwruntimeObject,Remove-AVIRestVimgrnwruntime,Get-AVIRestVimgrsevmruntime,Set-AVIRestVimgrsevmruntime,New-AVIRestVimgrsevmruntime,New-AVIRestVimgrsevmruntimeObject,Remove-AVIRestVimgrsevmruntime,Get-AVIRestVimgrvcenterruntime,Set-AVIRestVimgrvcenterruntime,New-AVIRestVimgrvcenterruntime,New-AVIRestVimgrvcenterruntimeSpawn,New-AVIRestVimgrvcenterruntimeRemove,New-AVIRestVimgrvcenterruntimeSetmgmtip,New-AVIRestVimgrvcenterruntimeModifymgmtip,New-AVIRestVimgrvcenterruntimeSetvnic,New-AVIRestVimgrvcenterruntimeModifyvnic,New-AVIRestVimgrvcenterruntimeRetrievevcenterdcnws,New-AVIRestVimgrvcenterruntimeRediscover,New-AVIRestVimgrvcenterruntimeVerifylogin,New-AVIRestVimgrvcenterruntimeOsverifylogin,New-AVIRestVimgrvcenterruntimeAwsverifylogin,New-AVIRestVimgrvcenterruntimeFaultinject,New-AVIRestVimgrvcenterruntimeDeletenetwork,New-AVIRestVimgrvcenterruntimeVcenterstatus,New-AVIRestVimgrvcenterruntimeVcenterdiag,New-AVIRestVimgrvcenterruntimeControlleripsubnets,New-AVIRestVimgrvcenterruntimeGenevent,New-AVIRestVimgrvcenterruntimeObject,New-AVIRestVimgrvcenterruntimeSetmgmtipObject,New-AVIRestVimgrvcenterruntimeSetvnicObject,New-AVIRestVimgrvcenterruntimeRediscoverObject,New-AVIRestVimgrvcenterruntimeFaultinjectObject,New-AVIRestVimgrvcenterruntimeDeletenetworkObject,Invoke-AVIRestVimgrvcenterruntimeGetnetworks,Remove-AVIRestVimgrvcenterruntime,Get-AVIRestVimgrvmruntime,Set-AVIRestVimgrvmruntime,New-AVIRestVimgrvmruntime,New-AVIRestVimgrvmruntimeObject,Remove-AVIRestVimgrvmruntime,Get-AVIRestVimgrvcenternetworks,Set-AVIRestVimgrvcenternetworks,New-AVIRestVimgrvcenternetworks,Remove-AVIRestVimgrvcenternetworks,Get-AVIRestVirtualservice,Set-AVIRestVirtualservice,New-AVIRestVirtualservice,New-AVIRestVirtualserviceClear,New-AVIRestVirtualserviceObject,New-AVIRestVirtualserviceClearObject,Invoke-AVIRestVirtualserviceScaleout,Invoke-AVIRestVirtualserviceScalein,Invoke-AVIRestVirtualserviceMigrate,Invoke-AVIRestVirtualserviceSwitchover,Invoke-AVIRestVirtualserviceResync,Invoke-AVIRestVirtualserviceRotatekeys,Invoke-AVIRestVirtualserviceRetryplacement,Invoke-AVIRestVirtualserviceLogRecommendation,Invoke-AVIRestVirtualserviceApplyLogRecommendation,New-AVIRestVirtualserviceScaleoutObject,New-AVIRestVirtualserviceScaleinObject,New-AVIRestVirtualserviceMigrateObject,New-AVIRestVirtualserviceSwitchoverObject,New-AVIRestVirtualserviceResyncObject,New-AVIRestVirtualserviceRetryplacementObject,New-AVIRestVirtualserviceLogRecommendationObject,New-AVIRestVirtualserviceApplyLogRecommendationObject,Remove-AVIRestVirtualservice,Get-AVIRestVrfcontext,Set-AVIRestVrfcontext,New-AVIRestVrfcontext,New-AVIRestVrfcontextObject,Remove-AVIRestVrfcontext,Get-AVIRestVsdatascriptset,Set-AVIRestVsdatascriptset,New-AVIRestVsdatascriptset,New-AVIRestVsdatascriptsetObject,Remove-AVIRestVsdatascriptset,Get-AVIRestVsgs,Set-AVIRestVsgs,New-AVIRestVsgs,New-AVIRestVsgsObject,Remove-AVIRestVsgs,Get-AVIRestVirtualserviceInventory,Set-AVIRestVirtualserviceInventory,New-AVIRestVirtualserviceInventory,Remove-AVIRestVirtualserviceInventory,Get-AVIRestVsvip,Set-AVIRestVsvip,New-AVIRestVsvip,New-AVIRestVsvipObject,Remove-AVIRestVsvip,Get-AVIRestVsvipInventory,Set-AVIRestVsvipInventory,New-AVIRestVsvipInventory,New-AVIRestVsvipInventoryObject,Remove-AVIRestVsvipInventory,Get-AVIRestWafapplicationsignatureprovider,Set-AVIRestWafapplicationsignatureprovider,New-AVIRestWafapplicationsignatureprovider,New-AVIRestWafapplicationsignatureproviderObject,Remove-AVIRestWafapplicationsignatureprovider,Get-AVIRestWafcrs,Set-AVIRestWafcrs,New-AVIRestWafcrs,New-AVIRestWafcrsObject,Remove-AVIRestWafcrs,Get-AVIRestWafpolicy,Set-AVIRestWafpolicy,Set-AVIRestWafpolicyUpdateCrsRules,New-AVIRestWafpolicy,New-AVIRestWafpolicyObject,Remove-AVIRestWafpolicy,Get-AVIRestWafpolicypsmgroup,Set-AVIRestWafpolicypsmgroup,New-AVIRestWafpolicypsmgroup,New-AVIRestWafpolicypsmgroupObject,Remove-AVIRestWafpolicypsmgroup,Get-AVIRestWafpolicypsmgroupInventory,Set-AVIRestWafpolicypsmgroupInventory,New-AVIRestWafpolicypsmgroupInventory,New-AVIRestWafpolicypsmgroupInventoryObject,Remove-AVIRestWafpolicypsmgroupInventory,Get-AVIRestWafprofile,Set-AVIRestWafprofile,New-AVIRestWafprofile,New-AVIRestWafprofileObject,Remove-AVIRestWafprofile,Get-AVIRestWebapput,Set-AVIRestWebapput,New-AVIRestWebapput,New-AVIRestWebapputObject,Remove-AVIRestWebapput,Get-AVIRestWebhook,Set-AVIRestWebhook,New-AVIRestWebhook,New-AVIRestWebhookObject,Remove-AVIRestWebhook |