public/Set-ProofpointOrg.ps1
<# .SYNOPSIS Sets Proofpoint Org Options. .DESCRIPTION Sets Org Options .PARAMETER Domain Any Domain in org. .PARAMETER Active Disables/Enables Org Deactivate with -Active:$false .EXAMPLE PS> Set-ProofpointOrg -Domain microsoft.com -Active:$false #> Function Set-ProofpointOrg{ [CmdletBinding(SupportsShouldProcess = $true)] Param( [Parameter(Mandatory=$true)] [string]$Domain, [string]$Active ) $PSBoundParameters| Out-Null $Body = @{ } switch ($PSBoundParameters.keys){ "Active" {$Body += @{is_active = "$($PSBoundParameters["Active"])"}} } $jsonBody = $Body | ConvertTo-Json if(!($PPheaders)){ Write-Error "Not Connected to Proofpoint." } try{ Invoke-RestMethod -Uri "$PPURI/orgs/$Domain" -Headers $PPheaders -Method patch -Body $jsonBody -ContentType 'application/json' }Catch{ Write-Output "$_" } } |