Public/Get-DattoSaasSeat.ps1

function Get-DattoSaasSeat {
<#
.SYNOPSIS
Returns SaaS Protection seats for a customer.
.DESCRIPTION
Implements GET /v1/saas/{saasCustomerId}/seats. SeatType is encoded as the documented comma-separated filter.
.PARAMETER SaasCustomerId
The SaaS Protection customer ID.
.PARAMETER SeatType
One or more seat types: User, Site, TeamSite, SharedMailbox, Team, or SharedDrive.
.PARAMETER RawResponse
Returns the direct API response body.
.PARAMETER Connection
A connection object, name, or ID.
.EXAMPLE
Get-DattoSaasSeat -SaasCustomerId 53124 -SeatType User,SharedMailbox
#>

    [CmdletBinding()]
    param(
        [Parameter(Mandatory, ValueFromPipelineByPropertyName)][ValidateRange(1, [int]::MaxValue)][int]$SaasCustomerId,
        [Parameter()][ValidateSet('User', 'Site', 'TeamSite', 'SharedMailbox', 'Team', 'SharedDrive')][string[]]$SeatType,
        [Parameter()][switch]$RawResponse,
        [Parameter()][AllowNull()][object]$Connection
    )
    process {
        $query = @{}
        if ($PSBoundParameters.ContainsKey('SeatType')) { $query['seatType'] = $SeatType }
        Invoke-DattoApiRequest -Path "/v1/saas/$SaasCustomerId/seats" -Query $query -RawResponse:$RawResponse -Connection $Connection
    }
}