From 9b27d10220b287095f9f8b6b277780b24cb5b4d8 Mon Sep 17 00:00:00 2001 From: suleimanelkhoury Date: Wed, 15 Apr 2026 10:54:53 +0200 Subject: [PATCH] fix(auth): add fallback for end-user max budget when not set on token --- litellm/proxy/auth/user_api_key_auth.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/litellm/proxy/auth/user_api_key_auth.py b/litellm/proxy/auth/user_api_key_auth.py index 81e19eceada..2b9aee775b3 100644 --- a/litellm/proxy/auth/user_api_key_auth.py +++ b/litellm/proxy/auth/user_api_key_auth.py @@ -1432,6 +1432,10 @@ async def _user_api_key_auth_builder( # noqa: PLR0915 # Check 5c. End user max budget end_user_mb = valid_token.end_user_max_budget + # Fallback in case end-user max budget not set on token + if end_user_mb is None and _end_user_object is not None: + budget_table = _end_user_object.litellm_budget_table + end_user_mb = budget_table.max_budget if budget_table is not None else None if ( end_user_mb is not None and _end_user_object is not None @@ -1953,6 +1957,10 @@ async def _run_post_custom_auth_checks( # 4b. Check end-user max_budget end_user_mb = valid_token.end_user_max_budget + # Fallback in case end-user max budget not set on token + if end_user_mb is None and end_user_object is not None: + budget_table = end_user_object.litellm_budget_table + end_user_mb = budget_table.max_budget if budget_table is not None else None if ( end_user_mb is not None and end_user_object is not None