{"record":{"id":"96580da8cf5228f2","repo":"BerriAI/litellm","slug":"setting-s-conflicting-keys-are-derived-from-the","errorCode":null,"errorMessage":"Setting(s) {conflicting_keys} are derived from the deployment environment and cannot be changed from the UI.","messagePattern":"Setting\\(s\\) (.+?) are derived from the deployment environment and cannot be changed from the UI\\.","errorType":"http","errorClass":"HTTPException","httpStatus":400,"severity":"error","filePath":"litellm/proxy/ui_crud_endpoints/proxy_setting_endpoints.py","lineNumber":1451,"sourceCode":"    if prisma_client is None:\n        raise HTTPException(\n            status_code=500,\n            detail={\"error\": \"Database not connected. Please connect a database.\"},\n        )\n\n    if store_model_in_db is not True:\n        raise HTTPException(\n            status_code=500,\n            detail={\"error\": \"Set `'STORE_MODEL_IN_DB='True'` in your env to enable this feature.\"},\n        )\n\n    conflicting_keys: Final = sorted(\n        key\n        for key, value in settings_body.items()\n        if key in _DERIVED_UI_SETTINGS_FIELDS and value != _derived_ui_setting_value(key)\n    )\n    if conflicting_keys:\n        raise HTTPException(\n            status_code=400,\n            detail=(\n                f\"Setting(s) {conflicting_keys} are derived from the deployment environment \"\n                \"and cannot be changed from the UI.\"\n            ),\n        )\n\n    # Validate against the same effective class GET advertises, so\n    # enterprise-registered fields are typed consistently on both sides.\n    effective_cls: Final = _get_effective_ui_settings_class()\n    try:\n        settings: Final = effective_cls.model_validate(settings_body)\n    except ValidationError as e:\n        raise HTTPException(status_code=422, detail=e.errors())\n\n    # Only include fields the caller actually sent (not Pydantic defaults).\n    settings_dict: Final[Mapping[str, JsonValue]] = settings.model_dump(exclude_unset=True)\n","sourceCodeStart":1433,"sourceCodeEnd":1469,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/ui_crud_endpoints/proxy_setting_endpoints.py#L1433-L1469","documentation":"Config-consistency guard in update_ui_settings: the request tried to change fields in _DERIVED_UI_SETTINGS_FIELDS whose values are computed from the proxy's deployment environment (env vars). Because these settings are pushed back out to every pod from the environment, UI edits would be overwritten within one poll cycle, so divergent values are rejected instead.","triggerScenarios":"Thrown at litellm/proxy/ui_crud_endpoints/proxy_setting_endpoints.py:1451 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Change these settings in the deployment environment/config instead of the UI, and remove them from the update payload."],"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"}