{"record":{"id":"f65dbabe48cacbdd","repo":"BerriAI/litellm","slug":"invalid-files-config-expected-a-list-is-not-a-lis","errorCode":null,"errorMessage":"invalid files config, expected a list is not a list","messagePattern":"invalid files config, expected a list is not a list","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"litellm/proxy/openai_files_endpoints/files_endpoints.py","lineNumber":77,"sourceCode":"from litellm.types.llms.openai import (\n    CREATE_FILE_REQUESTS_PURPOSE,\n    FileExpiresAfter,\n    OpenAIFileObject,\n    OpenAIFilesPurpose,\n)\n\nrouter: Final = APIRouter()\n\nfiles_config = None\n\n\ndef set_files_config(config):\n    global files_config\n    if config is None:\n        return\n\n    if not isinstance(config, list):\n        raise ValueError(\"invalid files config, expected a list is not a list\")\n\n    for element in config:\n        if isinstance(element, dict):\n            for key, value in element.items():\n                if isinstance(value, str) and value.startswith(\"os.environ/\"):\n                    element[key] = get_secret_str(value)\n\n    files_config = config\n\n\ndef get_files_provider_config(\n    custom_llm_provider: str,\n):\n    global files_config\n    if custom_llm_provider == \"vertex_ai\":\n        return None\n    if files_config is None:\n        raise ValueError(\"files_settings is not set, set it on your config.yaml file.\")","sourceCodeStart":59,"sourceCodeEnd":95,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/openai_files_endpoints/files_endpoints.py#L59-L95","documentation":"ValueError raised by set_files_config at proxy startup: the 'files' section in the config is present but not a list (e.g. a dict or string). The files config parser expects a list of provider entries, so configuration loading aborts.","triggerScenarios":"Thrown at litellm/proxy/openai_files_endpoints/files_endpoints.py:77 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix files config in config.yaml to be a list of file configurations."],"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"}