diff --git a/openapi3/codegen-templates/api_client.mustache b/openapi3/codegen-templates/api_client.mustache index 420a1a3..2bb9c66 100644 --- a/openapi3/codegen-templates/api_client.mustache +++ b/openapi3/codegen-templates/api_client.mustache @@ -163,7 +163,8 @@ function Invoke-{{{apiNamePrefix}}}ApiClient { -ErrorAction Stop ` -UseBasicParsing ` -SkipCertificateCheck ` - -UserAgent $OktaUserAgent + -UserAgent $OktaUserAgent ` + -SkipHttpErrorCheck } else { # skip certification check, use proxy $RawResponse = Invoke-WebRequest -Uri $UriBuilder.Uri ` @@ -175,7 +176,8 @@ function Invoke-{{{apiNamePrefix}}}ApiClient { -SkipCertificateCheck ` -Proxy $Configuration["Proxy"].GetProxy($UriBuilder.Uri) ` -ProxyUseDefaultCredentials ` - -UserAgent $OktaUserAgent + -UserAgent $OktaUserAgent ` + -SkipHttpErrorCheck } } else { if ($null -eq $Configuration["Proxy"]) { @@ -186,7 +188,8 @@ function Invoke-{{{apiNamePrefix}}}ApiClient { -Body $RequestBody ` -ErrorAction Stop ` -UseBasicParsing ` - -UserAgent $OktaUserAgent + -UserAgent $OktaUserAgent ` + -SkipHttpErrorCheck } else { # perform certification check, use proxy $RawResponse = Invoke-WebRequest -Uri $UriBuilder.Uri ` @@ -197,7 +200,8 @@ function Invoke-{{{apiNamePrefix}}}ApiClient { -UseBasicParsing ` -Proxy $Configuration["Proxy"].GetProxy($UriBuilder.Uri) ` -ProxyUseDefaultCredentials ` - -UserAgent $OktaUserAgent + -UserAgent $OktaUserAgent ` + -SkipHttpErrorCheck } $Response = $null @@ -217,6 +221,7 @@ function Invoke-{{{apiNamePrefix}}}ApiClient { $RetryCount = $RetryCount + 1 $RequestId = $Headers['X-Okta-Request-Id'][0] AddRetryHeaders -Headers $HeaderParameters -RequestId $RequestId -RetryCount $RetryCount + Write-Verbose "Hit Rate limit: Retrying request after $WaitInMilliseconds milliseconds" Start-Sleep -Milliseconds $WaitInMilliseconds } else { diff --git a/openapi3/codegen-templates/okta_retryApi.mustache b/openapi3/codegen-templates/okta_retryApi.mustache index 6471fc1..3e5661f 100644 --- a/openapi3/codegen-templates/okta_retryApi.mustache +++ b/openapi3/codegen-templates/okta_retryApi.mustache @@ -86,12 +86,15 @@ function CalculateDelay { $Configuration = Get-OktaConfiguration - if ($null -eq $Headers['X-Rate-Limit-Reset']) { - throw "Error! The required header `X-Rate-Limit-Reset` missing when calling CalculateDelay." + if ($null -eq $Headers['x-rate-limit-reset']) { + throw "Error! The required header `x-rate-limit-reset` missing when calling CalculateDelay." } - $RateLimitReset = Get-Date -Date $Headers["X-Rate-Limit-Reset"][0] - $RetryAtUtcTime = $RateLimitReset.ToUniversalTime() + $RateLimitResetEpoch = $Headers["x-rate-limit-reset"][0] + # this is a unich seconds since epoch time, so we convert to date + $RateLimitResetUTC = New-Object DateTime(1970, 1, 1, 0, 0, 0, 0) + $RateLimitResetUTC = $RateLimitResetUTC.addSeconds($RateLimitResetEpoch) + $RetryAtUtcTime = $RateLimitResetUTC if ($null -eq $Headers["Date"]) {