diff --git a/litellm/proxy/guardrails/guardrail_hooks/azure/prompt_shield.py b/litellm/proxy/guardrails/guardrail_hooks/azure/prompt_shield.py index 5f06eeb5d89..d64c786d9c6 100644 --- a/litellm/proxy/guardrails/guardrail_hooks/azure/prompt_shield.py +++ b/litellm/proxy/guardrails/guardrail_hooks/azure/prompt_shield.py @@ -134,7 +134,14 @@ class AzureContentSafetyPromptShieldGuardrail(AzureGuardrailBase, CustomGuardrai "Azure Prompt Shield: Running pre-call prompt scan, on call_type: %s", call_type, ) - new_messages: Optional[List[AllMessageValues]] = data.get("messages") or data.get("input") + new_messages: Optional[List[AllMessageValues]] = data.get("messages") + if new_messages is None: + # Responses API uses "input" instead of "messages" + input_data = data.get("input") + if isinstance(input_data, str): + new_messages = [{"role": "user", "content": input_data}] + elif isinstance(input_data, list): + new_messages = input_data if new_messages is None: verbose_proxy_logger.warning( "Azure Prompt Shield: not running guardrail. No messages in data" diff --git a/litellm/proxy/guardrails/guardrail_hooks/azure/text_moderation.py b/litellm/proxy/guardrails/guardrail_hooks/azure/text_moderation.py index 0b15438907b..bafec44d214 100644 --- a/litellm/proxy/guardrails/guardrail_hooks/azure/text_moderation.py +++ b/litellm/proxy/guardrails/guardrail_hooks/azure/text_moderation.py @@ -227,7 +227,14 @@ class AzureContentSafetyTextModerationGuardrail(AzureGuardrailBase, CustomGuardr "Azure Text Moderation: Running pre-call prompt scan, on call_type: %s", call_type, ) - new_messages: Optional[List[AllMessageValues]] = data.get("messages") or data.get("input") + new_messages: Optional[List[AllMessageValues]] = data.get("messages") + if new_messages is None: + # Responses API uses "input" instead of "messages" + input_data = data.get("input") + if isinstance(input_data, str): + new_messages = [{"role": "user", "content": input_data}] + elif isinstance(input_data, list): + new_messages = input_data if new_messages is None: verbose_proxy_logger.warning( "Azure Text Moderation: not running guardrail. No messages in data"