An Azure service that identifies anomalies and defects early with time-series detection.
Hello Parag Srivastava ,
Greetings! Thanks for raising this question in Q&A forum.
The HTTP 403 "unusual behavior — temporarily blocked" error from Azure OpenAI is triggered by Azure's anomaly detection system, which monitors usage patterns rather than just raw rate limits. Even if your requests per minute are well within published limits, the system can flag your resource when it sees traffic coming from multiple geographically distant locations using the same API key (Virginia + Sydney in your case), combined with sudden bursts after long periods of silence. This is a security signal, not a quota issue — which is why the block does not auto-clear and why even a minimal curl probe with max_completion_tokens: 10 hits the wall immediately.
Here are the steps to get unblocked and prevent this from happening again:
Step 1: Open an Azure Support Ticket immediately (most important)
Since the block has not auto-cleared in 24+ hours and this is a live grant-funded charitable project, Q&A alone will not unblock your resource. You need to raise a formal support ticket:
Go to Azure Portal → Help + Support → New Support Request and fill in:
- Issue type: Technical
- Service: Azure OpenAI
- Resource:
bda-ai-foundry - Problem type: Connectivity, Latency, or Performance
- Problem subtype: My request is being throttled or blocked
- Severity: B (Moderate)
In the description, mention your Elevate grant, the charitable nature of the workload, the low RPM (<2 RPM cumulative), and request manual clearance of the block along with the specific trigger reason.
Step 2: Use separate API keys for each calling location
Using a single API key from two geographically distant locations (US + Australia) is very likely what triggered the anomaly detector. Fix this going forward by:
- Creating a dedicated API key for your Render worker (Virginia)
- Using a separate API key for your Mac workstation (Sydney)
You can manage keys under Azure Portal → Your OpenAI Resource → Keys and Endpoint.
Step 3: Avoid burst patterns after long idle periods
Your smoke-test scripts that bypass the rate limiter and fire 5–10 rapid calls after hours of silence are a known trigger for anomaly detection systems. Going forward, add a warm-up delay in your test scripts — even a simple 5-second gap between calls during testing will help avoid this pattern looking like a sudden attack.
Step 4: Consider separate deployments per workload
Rather than routing both your background enricher and your web service through the same deployment, consider creating two separate deployments on the same resource — one for each workload. This gives Azure cleaner traffic signals per deployment and makes it easier to debug which workload triggered an issue.
Step 5: Enable Diagnostic Logs for future visibility
So you can investigate any future blocks yourself, enable logging now:
Go to Azure Portal → bda-ai-foundry → Diagnostic Settings → Add diagnostic setting, and route logs to a Log Analytics workspace. This will let you query request patterns and identify what triggered the anomaly detector next time.
Step 6: Reply to this thread with your Subscription ID (or provide via private channel)
If a Microsoft engineer picks up this Q&A post, sharing your subscription ID (it is not a secret credential) will allow them to look up the resource and verify the block status. You can also mention it is associated with the Elevate grant for prioritization.
If this answer helps you kindly accept the answer which will help others who have similar questions.
Best Regards, Jerald Felix.Hello Parag Srivastava, Greetings! Thanks for raising this question in Q&A forum.
The HTTP 403 "unusual behavior — temporarily blocked" error from Azure OpenAI is triggered by Azure's anomaly detection system, which monitors usage patterns rather than just raw rate limits. Even if your requests per minute are well within published limits, the system can flag your resource when it sees traffic coming from multiple geographically distant locations using the same API key (Virginia + Sydney in your case), combined with sudden bursts after long periods of silence. This is a security signal, not a quota issue — which is why the block does not auto-clear and why even a minimal curl probe with max_completion_tokens: 10 hits the wall immediately.
Here are the steps to get unblocked and prevent this from happening again:
Step 1: Open an Azure Support Ticket immediately (most important)
Since the block has not auto-cleared in 24+ hours and this is a live grant-funded charitable project, Q&A alone will not unblock your resource. You need to raise a formal support ticket:
Go to Azure Portal → Help + Support → New Support Request and fill in:
- Issue type: Technical
- Service: Azure OpenAI
- Resource:
bda-ai-foundry - Problem type: Connectivity, Latency, or Performance
- Problem subtype: My request is being throttled or blocked
- Severity: B (Moderate)
In the description, mention your Elevate grant, the charitable nature of the workload, the low RPM (<2 RPM cumulative), and request manual clearance of the block along with the specific trigger reason.
Step 2: Use separate API keys for each calling location
Using a single API key from two geographically distant locations (US + Australia) is very likely what triggered the anomaly detector. Fix this going forward by:
- Creating a dedicated API key for your Render worker (Virginia)
- Using a separate API key for your Mac workstation (Sydney)
You can manage keys under Azure Portal → Your OpenAI Resource → Keys and Endpoint.
Step 3: Avoid burst patterns after long idle periods
Your smoke-test scripts that bypass the rate limiter and fire 5–10 rapid calls after hours of silence are a known trigger for anomaly detection systems. Going forward, add a warm-up delay in your test scripts — even a simple 5-second gap between calls during testing will help avoid this pattern looking like a sudden attack.
Step 4: Consider separate deployments per workload
Rather than routing both your background enricher and your web service through the same deployment, consider creating two separate deployments on the same resource — one for each workload. This gives Azure cleaner traffic signals per deployment and makes it easier to debug which workload triggered an issue.
Step 5: Enable Diagnostic Logs for future visibility
So you can investigate any future blocks yourself, enable logging now:
Go to Azure Portal → bda-ai-foundry → Diagnostic Settings → Add diagnostic setting, and route logs to a Log Analytics workspace. This will let you query request patterns and identify what triggered the anomaly detector next time.
Step 6: Reply to this thread with your Subscription ID (or provide via private channel)
If a Microsoft engineer picks up this Q&A post, sharing your subscription ID (it is not a secret credential) will allow them to look up the resource and verify the block status. You can also mention it is associated with the Elevate grant for prioritization.
If this answer helps you kindly accept the answer which will help others who have similar questions.
Best Regards,
Jerald Felix.