diff --git a/docs/my-website/docs/providers/openai/responses_api.md b/docs/my-website/docs/providers/openai/responses_api.md
index 0d6b9013ac8..31f21ba52a7 100644
--- a/docs/my-website/docs/providers/openai/responses_api.md
+++ b/docs/my-website/docs/providers/openai/responses_api.md
@@ -923,6 +923,45 @@ curl http://localhost:4000/v1/chat/completions \
+### Route all OpenAI chat completions through the Responses API (recommended)
+
+Instead of prefixing each model with `openai/responses/`, you can enable a global flag to automatically route **all** `/chat/completions` requests for OpenAI models through the Responses API bridge. This is the recommended approach for OpenAI models.
+
+
+
+
+```python showLineNumbers title="Global flag - route all OpenAI completions via Responses API"
+import litellm
+
+litellm.route_all_chat_openai_to_responses = True
+
+response = litellm.completion(
+ model="gpt-4o",
+ messages=[{"role": "user", "content": "Hello!"}],
+)
+```
+
+
+
+
+```yaml showLineNumbers title="proxy_config.yaml"
+litellm_settings:
+ route_all_chat_openai_to_responses: true
+```
+
+Or set via environment variable:
+
+```bash
+LITELLM_ROUTE_ALL_CHAT_OPENAI_TO_RESPONSES=true
+```
+
+
+
+
+:::note
+This flag only applies to the `openai` provider. Azure OpenAI and other providers are unaffected.
+:::
+
## Free-form Function Calling
diff --git a/litellm/__init__.py b/litellm/__init__.py
index e12e4ef6ee8..7e81f624b3c 100644
--- a/litellm/__init__.py
+++ b/litellm/__init__.py
@@ -218,8 +218,8 @@ modify_params = bool(os.getenv("LITELLM_MODIFY_PARAMS", False))
use_chat_completions_url_for_anthropic_messages: bool = bool(
os.getenv("LITELLM_USE_CHAT_COMPLETIONS_URL_FOR_ANTHROPIC_MESSAGES", False)
) # When True, routes OpenAI /v1/messages requests to chat/completions instead of the Responses API
-route_all_chat_openai_to_responses: bool = bool(
- os.getenv("LITELLM_ROUTE_ALL_CHAT_OPENAI_TO_RESPONSES", False)
+route_all_chat_openai_to_responses: bool = (
+ os.getenv("LITELLM_ROUTE_ALL_CHAT_OPENAI_TO_RESPONSES", "false").lower() == "true"
) # When True, routes all OpenAI /chat/completions requests through the Responses API bridge
retry = True
### AUTH ###
diff --git a/litellm/main.py b/litellm/main.py
index 619c2f37c24..b5636ab1c88 100644
--- a/litellm/main.py
+++ b/litellm/main.py
@@ -940,7 +940,8 @@ def responses_api_bridge_check(
) -> Tuple[dict, str]:
model_info: Dict[str, Any] = {}
- # Global flag: route ALL OpenAI chat completions through Responses API
+ # Global flag: route ALL OpenAI chat completions through Responses API.
+ # Returns early with minimal model_info; callers only inspect the "mode" key.
if litellm.route_all_chat_openai_to_responses and custom_llm_provider == "openai":
model = model.replace("responses/", "")
model_info["mode"] = "responses"