From 1c04016d7bced99f9747debe2d6e255c7860292d Mon Sep 17 00:00:00 2001 From: Alejandro Tapia Date: Tue, 3 Mar 2026 16:07:18 -0800 Subject: [PATCH] Fix: get_user_object raises on missing user, never returns None --- .../internal_user_endpoints.py | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/litellm/proxy/management_endpoints/internal_user_endpoints.py b/litellm/proxy/management_endpoints/internal_user_endpoints.py index d88d281019..3d799c5731 100644 --- a/litellm/proxy/management_endpoints/internal_user_endpoints.py +++ b/litellm/proxy/management_endpoints/internal_user_endpoints.py @@ -1867,13 +1867,22 @@ async def ui_view_users( "error": "Only proxy admins and organization admins can search users." }, ) - caller_user = await get_user_object( - user_id=user_api_key_dict.user_id, - prisma_client=prisma_client, - user_api_key_cache=user_api_key_cache, - user_id_upsert=False, - proxy_logging_obj=proxy_logging_obj, - ) + try: + caller_user = await get_user_object( + user_id=user_api_key_dict.user_id, + prisma_client=prisma_client, + user_api_key_cache=user_api_key_cache, + user_id_upsert=False, + proxy_logging_obj=proxy_logging_obj, + ) + except ValueError: + # get_user_object raises ValueError when user not found (user_id_upsert=False) + raise HTTPException( + status_code=403, + detail={ + "error": "Only proxy admins and organization admins can search users." + }, + ) if caller_user is None: raise HTTPException( status_code=403,