Public/Remove-DuneAction.ps1

<#
.SYNOPSIS
Remove an action.

.DESCRIPTION
DELETE to `actions/[id]`.
#>

function Remove-DuneAction {
    [CmdletBinding(
        SupportsShouldProcess,
        DefaultParameterSetName = 'Id',
        ConfirmImpact = 'High'
    )]
    param(
        [Parameter(ValueFromPipeline, ParameterSetName = "Object")]
        [DuneAction]$Action,

        [Parameter(ParameterSetName = 'Id')]
        [guid]$ActionId
    )

    begin {}

    process {
        if ($PSCmdlet.ParameterSetName -eq 'Id') { $Action = Get-DuneAction -Id $ActionId }
        $Uri = "actions/$($Action.Id)"
        
        if ($PSCmdlet.ShouldProcess($Action.Name)) {
            $null = Invoke-DuneApiRequest -Uri $Uri -Method DELETE
        }
    }

    end {}
}