functions/public/Remove-QualysAssetGroups.ps1
<# .Synopsis Removes an Asset Group to Qualys .DESCRIPTION Removes an Asset Group to Qualys .PARAMETER Identity The Title or ID of the Asset Group to delete. Only one Identity may be provided per API call. .EXAMPLE Remove-QualysAssetGroups -Identity "My Asset Group" #> function Remove-QualysAssetGroups{ [CmdletBinding(SupportsShouldProcess)] [Diagnostics.CodeAnalysis.SuppressMessageAttribute('PSUseSingularNouns', '', Justification = 'This is consistent with the vendors verbiage')] param ( [Parameter(Mandatory=$true)] [String]$Identity ) process{ if ($PSCmdlet.ShouldProcess($Identity)){ $RestSplat = @{ Method = 'POST' RelativeURI = 'asset/group/' Body = @{ action = 'delete' echo_request = '1' } } #Check if a name or ID is provided and add it to the Body hashtable If($Identity){ If($Identity -match '\D'){ $RestSplat.Body['id'] = (Get-QualysAssetGroups -Identity $Identity).Id } Else{ $RestSplat.Body['id'] = $Identity } } $Response = Invoke-QualysRestCall @RestSplat if ($Response) { Write-Verbose -Message $Response.SIMPLE_RETURN.RESPONSE.TEXT } } } } |