{"record":{"id":"8ccbcfd677b4c48e","repo":"BerriAI/litellm","slug":"dataforseo-login-is-not-set-set-dataforseo-login","errorCode":null,"errorMessage":"DATAFORSEO_LOGIN is not set. Set `DATAFORSEO_LOGIN` environment variable or pass credentials in api_key parameter.","messagePattern":"DATAFORSEO_LOGIN is not set\\. Set `DATAFORSEO_LOGIN` environment variable or pass credentials in api_key parameter\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"litellm/llms/dataforseo/search/transformation.py","lineNumber":75,"sourceCode":"        # Get login and password\n        login = get_secret_str(\"DATAFORSEO_LOGIN\")\n        password = get_secret_str(\"DATAFORSEO_PASSWORD\")\n\n        # If api_key is provided in \"login:password\" format, use it\n        caller_supplied_credentials: Final = bool(api_key and \":\" in api_key)\n        if api_key and \":\" in api_key:\n            login, password = api_key.split(\":\", 1)\n\n        if not caller_supplied_credentials and login and password:\n            self._assert_trusted_api_base_for_server_credential(\n                api_base,\n                self.DATAFORSEO_API_BASE,\n                \"DATAFORSEO_API_BASE\",\n                \"DATAFORSEO_LOGIN\",\n            )\n\n        if not login:\n            raise ValueError(\n                \"DATAFORSEO_LOGIN is not set. Set `DATAFORSEO_LOGIN` environment variable or pass credentials in api_key parameter.\"\n            )\n\n        if not password:\n            raise ValueError(\n                \"DATAFORSEO_PASSWORD is not set. Set `DATAFORSEO_PASSWORD` environment variable or pass credentials in api_key parameter.\"\n            )\n\n        # Create Basic Auth header\n        credentials: Final = f\"{login}:{password}\"\n        encoded_credentials: Final = base64.b64encode(credentials.encode()).decode()\n        headers[\"Authorization\"] = f\"Basic {encoded_credentials}\"\n        headers[\"Content-Type\"] = \"application/json\"\n\n        return headers\n\n    def get_complete_url(\n        self,","sourceCodeStart":57,"sourceCodeEnd":93,"githubUrl":"https://github.com/BerriAI/litellm/blob/6c2dcb801bf2b75c18f1bb24140e7cf57465cc4d/litellm/llms/dataforseo/search/transformation.py#L57-L93","documentation":"Error \"DATAFORSEO_LOGIN is not set. Set `DATAFORSEO_LOGIN` environment variable or pass credentials in api_key parameter.\" thrown in BerriAI/litellm.","triggerScenarios":"Thrown at litellm/llms/dataforseo/search/transformation.py:75 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set DATAFORSEO_LOGIN or pass credentials in api_key."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6c2dcb801bf2b75c18f1bb24140e7cf57465cc4d","analyzedAt":"2026-08-15T07:12:03.035Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}