Azure OpenAI (Microsoft Foundry)
Azure OpenAI errors and fixes
15 Azure OpenAI errors from the official error docs, grouped by HTTP status, each with what it means, why it happens, the documented fix and whether to retry. Verified .
- Official error docslearn.microsoft.com
- Status pageazure.status.microsoft
- Azure OpenAI rate limits
Error response body
The shape Azure OpenAI errors come back in, as the official docs show it. Read the status and error type from here before matching an entry below.
JSON
{
"error": {
"message": "The response was filtered",
"type": null,
"param": "prompt",
"code": "content_filter",
"status": 400
}
}HTTP 200 OK
200 finish_reason: content_filterThe completion was filtered. Non-streaming calls return no content (or rarely a partial result) with finish_reason set to content_filter; streaming calls stop and the last chunk for that generation carries finish_reason content_filter.Retry? Not stated200 content_filter_error (The contents are not filtered)The content filtering system was down or could not complete in time, so the request completed without content filtering. This is signalled by an error object inside content_filter_results.Retry? Not stated
HTTP 400 Bad Request
400 Bad RequestThe request failed validation. Content filtering also returns HTTP 400, with the content_filter code.Retry? Not stated400 content_filterThe prompt was classified at a filtered category and severity level by the content filtering system, so the API call fails with HTTP 400 and the message "The response was filtered".Retry? Not stated
HTTP 401 Unauthorized
HTTP 403 Forbidden
403 Forbidden (network access denied)The server understood the request but refuses to authorize it because the resource's network access controls blocked it. Unlike 401, credentials might be valid.Retry? Not stated403 Forbidden (resource has been temporarily blocked)Automated abuse detection systems suspended the resource because it violated the Microsoft Online Services Acceptable Use Policy. All requests to the resource return 403.Retry? Not stated
HTTP 404 Not Found
HTTP 429 Too Many Requests
429 Too Many Requests (Rate limit is exceeded)Requests exceeded the TPM or RPM rate limit for the deployment's allocated quota. Messages include "Requests to ... have been limited" or "Rate limit is exceeded". TPM is based on an estimate that includes prompt text, max_tokens and best_of; RPM is evaluated over short windows of 1 or 10 seconds.Retry? Yes429 Too Many Requests (System is experiencing high demand)Backend capacity is constrained and the condition is often transient. Messages include "The service is temporarily unable to process your request" or "System is experiencing high demand". Microsoft notes these are often misread as quota problems.Retry? Yes429 Too Many Requests (temporary rate limit adjustment)Standard (pay-as-you-go) deployments share a resource pool, and when demand approaches capacity the system temporarily reduces a deployment's effective rate limit. 429s occur even though configured quota has not changed, and x-ratelimit-limit-tokens is lower than the configured TPM.Retry? Yes429 Too Many Requests (token budget exceeded by request parameters)The rate limit is triggered while token usage metrics look low, because the rate limit calculation includes max_tokens and the prompt estimate rather than billed tokens.Retry? Not stated
HTTP 431 Request Header Fields Too Large
HTTP 500 Internal Server Error
HTTP 503 Service Unavailable
Newsletter
Know when the APIs change
One email per week. New model releases, API changes, what broke, and how developers are working around it.