ERROR CODES / ENGLISH
403 Forbidden: permission or region restrictions
Three causes of 403 errors, from blocked regions to models your account has not enabled, with checks for egress IP and model access.
Reviewed 2026-11-13 · ERROR CODES / 403 · Chinese detail: 完整中文页
What it means
A 403 does not mean the key is wrong. It means the key is not allowed to do this specific thing. There are three directions: the region is blocked, the account status is abnormal, or the model is not enabled for you.
// OpenAI region block
{'error': {'message': 'Country, region, or territory not supported', 'type': 'request_forbidden', 'code': 'unsupported_country_region_territory'}}
// Model not enabled
{"error": {"message": "You do not have access to model claude-opus-5-5", "type": "permission_error"}}
// Relay
{"error":{"message":"该模型未授权","type":"new_api_error"}}
The relay message means the model is not authorized.
Common causes
| Share | Cause | How to confirm |
|---|---|---|
| 40% | The region of your egress IP is blocked | Check the actual egress IP of the request |
| 35% | The model is not enabled for your account | Try a basic model instead |
| 15% | Account verification or real-name verification incomplete | Check the account status in the dashboard |
| 10% | The organization has been disabled | Check the organization status in the dashboard |
How to confirm
Check the egress IP:
curl https://api.ip.sb/geoip
If the region shown is not on the provider's supported list, this is a region block. Then confirm model permission:
curl https://api.example.com/v1/models -H "Authorization: Bearer $KEY"
If the model you want is missing from the returned list, this group has not enabled it.
Fix
For a region block, change the route or use a relay that is not subject to the region restriction. For a missing model, switch to a model the account or group has enabled. For an account or organization status problem, resolve it in the dashboard before retrying.
If it still fails
| Symptom | Responsible party |
|---|---|
| Direct call to the provider returns 403 unsupported_country | Your network egress |
| The same key works on another site | The current site has not enabled it |
| Only expensive models return 403 | Your account tier is insufficient |
Do not forge X-Forwarded-For to push the request through. Providers can detect it; at best your key is banned, at worst your account is.
General guidance, not a statement about any specific provider. For measured data, see the relay directory and method.