Public/Stop-DuneDeployment.ps1

function Stop-DuneDeployment {
    [CmdletBinding(DefaultParameterSetName = "Id")]
    param (
        [Parameter(ParameterSetName = "Id")]
        [guid]$Id,

        [Parameter(Mandatory, ParameterSetName = "Deployment", ValueFromPipeline)]
        [DuneDeployment]$Deployment,

        [Parameter()]
        [String]$TxId = (New-Guid)
    )

    begin {}

    process {
        Write-Debug "$($MyInvocation.MyCommand)|process|$($PSCmdlet.ParameterSetName)"
        if ($PSCmdlet.ParameterSetName -eq "Deployment") {
            $Id = $Deployment.Id
        }
        $Body = @{TxId = $TxId}
        $Null = Invoke-DuneApiRequest -Uri "deployments/$($Id)/stopresources" -Method POST -Body $Body
    }

    end {}
}