From 955f6d8cae80d0199ec08ea34c318e2aa5108717 Mon Sep 17 00:00:00 2001 From: Arjun Pakhan Date: Mon, 14 Sep 2026 10:13:35 +0000 Subject: [PATCH] fix(anthropic): propagate and format custom api_base in count_tokens endpoint --- litellm/llms/anthropic/count_tokens/handler.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/litellm/llms/anthropic/count_tokens/handler.py b/litellm/llms/anthropic/count_tokens/handler.py index 38cd429d99a..9cdb886e5cd 100644 --- a/litellm/llms/anthropic/count_tokens/handler.py +++ b/litellm/llms/anthropic/count_tokens/handler.py @@ -66,8 +66,18 @@ class AnthropicCountTokensHandler(AnthropicCountTokensConfig): verbose_logger.debug("Transformed request: %s", request_body) - # Get endpoint URL - endpoint_url: Final = api_base or self.get_anthropic_count_tokens_endpoint() + # Construct clean endpoint URL handling custom proxy destinations + if api_base: + if api_base.endswith("/messages/count_tokens"): + endpoint_url = api_base + elif api_base.endswith("/v1/messages"): + endpoint_url = f"{api_base.rstrip('/')}/count_tokens" + elif api_base.endswith("/v1"): + endpoint_url = f"{api_base.rstrip('/')}/messages/count_tokens" + else: + endpoint_url = f"{api_base.rstrip('/')}/v1/messages/count_tokens" + else: + endpoint_url = self.get_anthropic_count_tokens_endpoint() verbose_logger.debug("Making request to: %s", endpoint_url)