Public/Get-PeakExpectation.ps1

function Get-PeakExpectation
{
    param
    (
    )

    $SeverityDescription = @{
        1 = 'Zeer licht'
        2 = 'Licht'
        3 = 'Normaal'
        4 = 'Zwaar'
        5 = 'Zeer zwaar'
    }

    Invoke-RestMethod 'https://api.rwsverkeersinfo.nl/api/v2/pages/?type=website.PeakExpectationPage&fields=cards'
    | Select-Object -ExpandProperty Items
    | Select-Object -ExpandProperty cards
    | ForEach-Object {
        $DateText = $_.Date
        $Date = [DateOnly]::ParseExact($DateText, 'yyyy-MM-dd', $null)
        $Severity = [int]($_.Severity)

        [PSCustomObject]@{
            PSTypeName          = 'UncommonSense.Rws.PeakExpectation'
            DateText            = $DateText
            Date                = $Date
            DayPart             = $_.DayPart
            Description         = $_.Content -replace '^<.*?>', '' -replace '</.*>$', '' -replace 'deze website', 'https://www.rwsverkeersinfo.nl'
            Severity            = $SeverityDescription[$Severity]
            SeverityExplanation = $_.Severity_Explanation
        }
    }
}