Public/Get-DattoApiRateLimit.ps1
|
function Get-DattoApiRateLimit { <# .SYNOPSIS Returns the last observed Datto API rate-limit telemetry. .DESCRIPTION Returns values captured from X-API-Limit-Remaining, X-API-Limit-Resets, and X-API-Limit-Cost response headers for a connection. Values remain null until a response supplies the headers. .PARAMETER Connection A connection object, name, or ID. The default connection is used when omitted. .EXAMPLE Get-DattoApiRateLimit .OUTPUTS DattoBackupApi.RateLimit #> [CmdletBinding()] param( [Parameter(ValueFromPipeline)] [AllowNull()] [object]$Connection ) process { $state = Resolve-DattoApiConnectionState -Connection $Connection $result = [pscustomobject][ordered]@{ ConnectionId = [guid]$state.Id ConnectionName = [string]$state.Name Remaining = $state.RateLimit.Remaining ResetEpoch = $state.RateLimit.ResetEpoch ResetAtUtc = $state.RateLimit.ResetAtUtc Cost = $state.RateLimit.Cost ObservedAtUtc = $state.RateLimit.ObservedAtUtc } $result.PSObject.TypeNames.Insert(0, 'DattoBackupApi.RateLimit') $result } } |