> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/open-webui/open-webui/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Configuration

> Import and update the complete system configuration

Imports a complete system configuration object, updating all settings atomically. This endpoint allows administrators to restore configurations from backups or apply configuration changes in bulk.

## Authentication

Requires admin authentication.

## Request Body

<ParamField body="config" type="object" required>
  Complete configuration object to import. See the response schema from GET /api/configs/export for the full structure.

  <Expandable title="properties">
    <ParamField body="version" type="integer">
      Configuration version number
    </ParamField>

    <ParamField body="ui" type="object">
      UI-related configuration settings

      <Expandable title="properties">
        <ParamField body="enable_signup" type="boolean">
          Whether user signup is enabled
        </ParamField>

        <ParamField body="ENABLE_LOGIN_FORM" type="boolean">
          Whether login form is displayed
        </ParamField>

        <ParamField body="default_locale" type="string">
          Default locale for the UI
        </ParamField>

        <ParamField body="default_models" type="string">
          Comma-separated list of default models
        </ParamField>

        <ParamField body="default_pinned_models" type="string">
          Comma-separated list of pinned models
        </ParamField>

        <ParamField body="model_order_list" type="array">
          Ordered list of model IDs
        </ParamField>

        <ParamField body="prompt_suggestions" type="array">
          Array of prompt suggestion objects
        </ParamField>

        <ParamField body="banners" type="array">
          Array of banner objects
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="auth" type="object">
      Authentication configuration

      <Expandable title="properties">
        <ParamField body="enable_api_keys" type="boolean">
          Whether API keys are enabled
        </ParamField>

        <ParamField body="jwt_expiry" type="string">
          JWT expiration time (e.g., "4w", "30d")
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="oauth" type="object">
      OAuth configuration settings

      <Expandable title="properties">
        <ParamField body="enable_signup" type="boolean">
          Whether OAuth signup is enabled
        </ParamField>

        <ParamField body="merge_accounts_by_email" type="boolean">
          Whether to merge accounts by email
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="ollama" type="object">
      Ollama configuration

      <Expandable title="properties">
        <ParamField body="enable" type="boolean">
          Whether Ollama API is enabled
        </ParamField>

        <ParamField body="base_urls" type="array">
          Array of Ollama base URLs
        </ParamField>

        <ParamField body="api_configs" type="object">
          Per-URL API configurations
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="openai" type="object">
      OpenAI configuration

      <Expandable title="properties">
        <ParamField body="enable" type="boolean">
          Whether OpenAI API is enabled
        </ParamField>

        <ParamField body="api_keys" type="array">
          Array of OpenAI API keys
        </ParamField>

        <ParamField body="api_base_urls" type="array">
          Array of OpenAI API base URLs
        </ParamField>

        <ParamField body="api_configs" type="object">
          Per-URL API configurations
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="models" type="object">
      Model configuration

      <Expandable title="properties">
        <ParamField body="base_models_cache" type="boolean">
          Whether base models cache is enabled
        </ParamField>

        <ParamField body="default_metadata" type="object">
          Default metadata for models
        </ParamField>

        <ParamField body="default_params" type="object">
          Default parameters for models
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="tool_server" type="object">
      Tool server configuration

      <Expandable title="properties">
        <ParamField body="connections" type="array">
          Array of tool server connection objects
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="terminal_server" type="object">
      Terminal server configuration

      <Expandable title="properties">
        <ParamField body="connections" type="array">
          Array of terminal server connection objects
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="direct" type="object">
      Direct connection settings

      <Expandable title="properties">
        <ParamField body="enable" type="boolean">
          Whether direct connections are enabled
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="webui" type="object">
      Web UI configuration

      <Expandable title="properties">
        <ParamField body="url" type="string">
          Web UI URL
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="user" type="object">
      User configuration

      <Expandable title="properties">
        <ParamField body="permissions" type="object">
          Default user permissions object
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="folders" type="object">
      Folder configuration

      <Expandable title="properties">
        <ParamField body="enable" type="boolean">
          Whether folders are enabled
        </ParamField>

        <ParamField body="max_file_count" type="string">
          Maximum file count per folder
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="channels" type="object">
      Channel configuration

      <Expandable title="properties">
        <ParamField body="enable" type="boolean">
          Whether channels are enabled
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="notes" type="object">
      Notes configuration

      <Expandable title="properties">
        <ParamField body="enable" type="boolean">
          Whether notes are enabled
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="webhook_url" type="string">
      Webhook URL for notifications
    </ParamField>
  </Expandable>
</ParamField>

## Response

Returns the updated configuration object in the same format as GET /api/configs/export.

<ResponseField name="version" type="integer">
  Configuration version number
</ResponseField>

<ResponseField name="ui" type="object">
  UI-related configuration settings (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="auth" type="object">
  Authentication configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="oauth" type="object">
  OAuth configuration settings (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="ollama" type="object">
  Ollama configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="openai" type="object">
  OpenAI configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="models" type="object">
  Model configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="tool_server" type="object">
  Tool server configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="terminal_server" type="object">
  Terminal server configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="direct" type="object">
  Direct connection settings (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="webui" type="object">
  Web UI configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="user" type="object">
  User configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="folders" type="object">
  Folder configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="channels" type="object">
  Channel configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="notes" type="object">
  Notes configuration (see GET endpoint for full schema)
</ResponseField>

<ResponseField name="webhook_url" type="string">
  Webhook URL for notifications
</ResponseField>

## Example Request

```json theme={null}
{
  "config": {
    "version": 0,
    "ui": {
      "enable_signup": false,
      "ENABLE_LOGIN_FORM": true,
      "default_locale": "en-US",
      "default_models": "gpt-4,gpt-3.5-turbo",
      "default_pinned_models": "gpt-4",
      "model_order_list": [],
      "prompt_suggestions": [
        {
          "title": ["Help me study", "vocabulary for a college entrance exam"],
          "content": "Help me study vocabulary: write a sentence for me to fill in the blank, and I'll try to pick the correct option."
        }
      ],
      "default_user_role": "user",
      "default_group_id": "",
      "watermark": "Generated by Open WebUI",
      "enable_community_sharing": true,
      "enable_message_rating": true,
      "enable_user_webhooks": true,
      "banners": [
        {
          "id": "maintenance-notice",
          "type": "info",
          "title": "Scheduled Maintenance",
          "content": "System maintenance scheduled for tonight at 11 PM UTC.",
          "dismissible": true,
          "timestamp": 1709251200
        }
      ]
    },
    "auth": {
      "enable_api_keys": true,
      "api_key": {
        "endpoint_restrictions": true,
        "allowed_endpoints": "/api/chat,/api/completions"
      },
      "jwt_expiry": "2w",
      "admin": {
        "show": true,
        "email": "admin@example.com"
      }
    },
    "ollama": {
      "enable": true,
      "base_urls": ["http://localhost:11434"],
      "api_configs": {}
    },
    "openai": {
      "enable": true,
      "api_keys": ["sk-..."],
      "api_base_urls": ["https://api.openai.com/v1"],
      "api_configs": {}
    },
    "models": {
      "base_models_cache": true,
      "default_metadata": {},
      "default_params": {
        "temperature": 0.7,
        "top_p": 0.9
      }
    },
    "tool_server": {
      "connections": [
        {
          "url": "https://tools.example.com",
          "path": "/openapi.json",
          "type": "openapi",
          "auth_type": "bearer",
          "key": "your-api-key"
        }
      ]
    },
    "direct": {
      "enable": false
    },
    "webui": {
      "url": "https://chat.example.com"
    }
  }
}
```

## Example Response

```json theme={null}
{
  "version": 0,
  "ui": {
    "enable_signup": false,
    "ENABLE_LOGIN_FORM": true,
    "default_locale": "en-US",
    "default_models": "gpt-4,gpt-3.5-turbo",
    "default_pinned_models": "gpt-4",
    "model_order_list": [],
    "prompt_suggestions": [
      {
        "title": ["Help me study", "vocabulary for a college entrance exam"],
        "content": "Help me study vocabulary: write a sentence for me to fill in the blank, and I'll try to pick the correct option."
      }
    ],
    "default_user_role": "user",
    "default_group_id": "",
    "watermark": "Generated by Open WebUI",
    "enable_community_sharing": true,
    "enable_message_rating": true,
    "enable_user_webhooks": true,
    "banners": [
      {
        "id": "maintenance-notice",
        "type": "info",
        "title": "Scheduled Maintenance",
        "content": "System maintenance scheduled for tonight at 11 PM UTC.",
        "dismissible": true,
        "timestamp": 1709251200
      }
    ]
  },
  "auth": {
    "enable_api_keys": true,
    "api_key": {
      "endpoint_restrictions": true,
      "allowed_endpoints": "/api/chat,/api/completions"
    },
    "jwt_expiry": "2w",
    "admin": {
      "show": true,
      "email": "admin@example.com"
    }
  },
  "ollama": {
    "enable": true,
    "base_urls": ["http://localhost:11434"],
    "api_configs": {}
  },
  "openai": {
    "enable": true,
    "api_keys": ["sk-..."],
    "api_base_urls": ["https://api.openai.com/v1"],
    "api_configs": {}
  },
  "models": {
    "base_models_cache": true,
    "default_metadata": {},
    "default_params": {
      "temperature": 0.7,
      "top_p": 0.9
    }
  },
  "tool_server": {
    "connections": [
      {
        "url": "https://tools.example.com",
        "path": "/openapi.json",
        "type": "openapi",
        "auth_type": "bearer",
        "key": "your-api-key"
      }
    ]
  },
  "direct": {
    "enable": false
  },
  "webui": {
    "url": "https://chat.example.com"
  }
}
```

## Notes

* This endpoint performs a complete configuration replacement. All existing configuration values will be overwritten.
* Partial updates are not supported. To update specific settings, retrieve the current configuration with GET /api/configs/export, modify the desired fields, and POST the complete object back.
* Configuration changes take effect immediately and may affect all users.
* It's recommended to back up the current configuration before importing a new one.
* Some configuration changes may require a server restart to take full effect.
