BerriAI/litellm · error · ValueError
No vertex credentials found
Error message
No vertex credentials found
What it means
Raised in the Vertex pass-through credential resolution when neither router credentials, explicit vertex_credentials, nor a default_vertex_config yielded a usable GOOGLE credential — the request cannot be signed for the Vertex AI endpoint.
Source
Thrown at litellm/proxy/pass_through_endpoints/llm_passthrough_endpoints.py:1636
headers = _safe_get_request_headers(request).copy()
headers_passed_through = True
verbose_proxy_logger.debug("default_vertex_config not set, incoming request headers %s", headers)
headers.pop("content-length", None)
headers.pop("host", None)
else:
if router_credentials is not None:
vertex_credentials_str = None
elif vertex_credentials is not None:
# Use credentials from vertex_credentials
# When vertex_credentials are provided (including default credentials),
# use their project/location values if available
if vertex_credentials.vertex_project is not None:
vertex_project = vertex_credentials.vertex_project
if vertex_credentials.vertex_location is not None:
vertex_location = vertex_credentials.vertex_location
vertex_credentials_str = vertex_credentials.vertex_credentials
else:
raise ValueError("No vertex credentials found")
_auth_header, vertex_project = await vertex_llm_base._ensure_access_token_async(
credentials=vertex_credentials_str,
project_id=vertex_project,
custom_llm_provider="vertex_ai_beta",
)
auth_header, _ = vertex_llm_base._get_token_and_url(
model="",
auth_header=_auth_header,
gemini_api_key=None,
vertex_credentials=vertex_credentials_str,
vertex_project=vertex_project,
vertex_location=vertex_location,
stream=False,
custom_llm_provider="vertex_ai_beta",
api_base="",
)View on GitHub (pinned to 77b7c6c40c)
Solutions
- Set GOOGLE_APPLICATION_CREDENTIALS to a service account JSON path, or provide vertex_credentials in config.yaml.
- Verify the credentials file is readable by the proxy process.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/proxy/pass_through_endpoints/llm_passthrough_endpoints.py:1636 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18).
Data as JSON: /api/errors/3baab98b3a235f4c.
Report an issue: GitHub.