Public/Users/Remove-ZoomUserSchedulers.ps1
<#
.SYNOPSIS Delete all user schedulers. .DESCRIPTION Delete all user schedulers. Schedulers are the users to whom the current user has assigned on the user’s behalf. .PARAMETER UserId The user ID or email address. .PARAMETER ApiKey The Api Key. .PARAMETER ApiSecret The Api Secret. .OUTPUTS No output. Can use Passthru switch to pass UserId to output. .EXAMPLE Remove-ZoomUserSchedulers jmcevoy@lawfirm.com .LINK https://marketplace.zoom.us/docs/api-reference/zoom-api/users/userschedulersdelete #> function Remove-ZoomUserSchedulers { [CmdletBinding()] param ( [Parameter( Mandatory = $True, Position = 0, ValueFromPipeline = $True, ValueFromPipelineByPropertyName = $True )] [Alias('Email', 'EmailAddress', 'Id', 'user_id')] [string[]]$UserId, [ValidateNotNullOrEmpty()] [string]$ApiKey, [ValidateNotNullOrEmpty()] [string]$ApiSecret, [switch]$Passthru ) begin { #Generate Header with JWT (JSON Web Token) using the Api Key/Secret $Headers = New-ZoomHeaders -ApiKey $ApiKey -ApiSecret $ApiSecret } process { foreach ($user in $UserId) { $Request = [System.UriBuilder]"https://api.zoom.us/v2/users/$user/schedulers" try { Invoke-RestMethod -Uri $request.Uri -Headers $headers -Method DELETE } catch { Write-Error -Message "$($_.Exception.Message)" -ErrorId $_.Exception.Code -Category InvalidOperation } finally { if ($Passthru) { Write-Output $UserId } } } } } |