{"record":{"id":"9959ed50a66ca184","repo":"BerriAI/litellm","slug":"manus-api-key-is-required-set-manus-api-key-envir","errorCode":null,"errorMessage":"Manus API key is required. Set MANUS_API_KEY environment variable or pass api_key parameter.","messagePattern":"Manus API key is required\\. Set MANUS_API_KEY environment variable or pass api_key parameter\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"litellm/llms/manus/files/transformation.py","lineNumber":81,"sourceCode":"        self,\n        headers: dict,\n        model: str,\n        messages: list,\n        optional_params: dict,\n        litellm_params: dict,\n        api_key: str | None = None,\n        api_base: str | None = None,\n    ) -> dict:\n        \"\"\"\n        Validate environment and set up headers for Manus API.\n\n        Manus uses API_KEY header instead of Authorization: Bearer.\n        For file uploads, don't set Content-Type - httpx will set it for multipart.\n        \"\"\"\n        api_key = api_key or litellm.api_key or get_secret_str(\"MANUS_API_KEY\")\n\n        if not api_key:\n            raise ValueError(\n                \"Manus API key is required. Set MANUS_API_KEY environment variable or pass api_key parameter.\"\n            )\n\n        # Manus uses API_KEY header, not Authorization: Bearer\n        # Manus requires Content-Type: application/json for all requests (even GET)\n        headers.update(\n            {\n                \"API_KEY\": api_key,\n                \"Content-Type\": \"application/json\",\n            }\n        )\n        return headers\n\n    def get_supported_openai_params(self, model: str) -> list[OpenAICreateFileRequestOptionalParams]:\n        \"\"\"\n        Return supported OpenAI file creation parameters for Manus.\n        Manus supports the standard 'purpose' parameter.\n        \"\"\"","sourceCodeStart":63,"sourceCodeEnd":99,"githubUrl":"https://github.com/BerriAI/litellm/blob/6c2dcb801bf2b75c18f1bb24140e7cf57465cc4d/litellm/llms/manus/files/transformation.py#L63-L99","documentation":"Error \"Manus API key is required. Set MANUS_API_KEY environment variable or pass api_key parameter.\" thrown in BerriAI/litellm.","triggerScenarios":"Thrown at litellm/llms/manus/files/transformation.py:81 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set MANUS_API_KEY or pass 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-15T17:31:12.345Z"}