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

  1. Set GOOGLE_APPLICATION_CREDENTIALS to a service account JSON path, or provide vertex_credentials in config.yaml.
  2. 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.