{"record":{"id":"3baab98b3a235f4c","repo":"BerriAI/litellm","slug":"no-vertex-credentials-found","errorCode":null,"errorMessage":"No vertex credentials found","messagePattern":"No vertex credentials found","errorType":"validation","errorClass":"ValueError","httpStatus":500,"severity":"error","filePath":"litellm/proxy/pass_through_endpoints/llm_passthrough_endpoints.py","lineNumber":1636,"sourceCode":"        headers = _safe_get_request_headers(request).copy()\n        headers_passed_through = True\n        verbose_proxy_logger.debug(\"default_vertex_config  not set, incoming request headers %s\", headers)\n        headers.pop(\"content-length\", None)\n        headers.pop(\"host\", None)\n    else:\n        if router_credentials is not None:\n            vertex_credentials_str = None\n        elif vertex_credentials is not None:\n            # Use credentials from vertex_credentials\n            # When vertex_credentials are provided (including default credentials),\n            # use their project/location values if available\n            if vertex_credentials.vertex_project is not None:\n                vertex_project = vertex_credentials.vertex_project\n            if vertex_credentials.vertex_location is not None:\n                vertex_location = vertex_credentials.vertex_location\n            vertex_credentials_str = vertex_credentials.vertex_credentials\n        else:\n            raise ValueError(\"No vertex credentials found\")\n\n        _auth_header, vertex_project = await vertex_llm_base._ensure_access_token_async(\n            credentials=vertex_credentials_str,\n            project_id=vertex_project,\n            custom_llm_provider=\"vertex_ai_beta\",\n        )\n\n        auth_header, _ = vertex_llm_base._get_token_and_url(\n            model=\"\",\n            auth_header=_auth_header,\n            gemini_api_key=None,\n            vertex_credentials=vertex_credentials_str,\n            vertex_project=vertex_project,\n            vertex_location=vertex_location,\n            stream=False,\n            custom_llm_provider=\"vertex_ai_beta\",\n            api_base=\"\",\n        )","sourceCodeStart":1618,"sourceCodeEnd":1654,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/pass_through_endpoints/llm_passthrough_endpoints.py#L1618-L1654","documentation":"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.","triggerScenarios":"Thrown at litellm/proxy/pass_through_endpoints/llm_passthrough_endpoints.py:1636 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","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."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}