Overview
OverrideConfig is a configuration panel component that allows users to control which node properties and variables in a chatflow can be overridden at runtime via the prediction API.
Description
This React component provides an interface for enabling and managing override configuration for chatflow API calls. When enabled, it fetches all configurable node properties from the server and displays them grouped by node label in expandable accordion panels. Each property can be individually toggled on or off via a switch control rendered in a table. It also supports variable overrides, displaying all defined variables with toggle switches. The configuration is persisted as part of the chatflow's apiConfig.overrideConfig JSON structure. The component includes an inner OverrideConfigTable sub-component that renders a toggleable property table with optional schema tooltips.
Usage
Use this component in the chatflow settings dialog to configure which properties can be dynamically overridden when making prediction API calls. This is essential for allowing API consumers to customize node parameters (such as model names, temperatures, or prompts) without modifying the flow itself.
Code Reference
Source Location
Signature
const OverrideConfig = ({ dialogProps }) => {
// Fetches node config and variables, renders toggleable override tables
// Saves to chatflow.apiConfig.overrideConfig
}
Import
import OverrideConfig from '@/ui-component/extended/OverrideConfig'
I/O Contract
Inputs
| Name |
Type |
Required |
Description
|
| dialogProps |
object |
Yes |
Contains chatflow object with id and apiConfig JSON string
|
Outputs
| Name |
Type |
Description
|
| Rendered Component |
JSX.Element |
Override configuration panel with node/variable toggles and Save button
|
Internal Components
OverrideConfigTable
const OverrideConfigTable = ({ columns, onToggle, rows, sx }) => {
// Renders a MUI Table with toggleable rows
// Columns are auto-capitalized from row keys
// 'enabled' column renders a SwitchInput
// 'type' column renders schema tooltip if row.schema exists
}
| Prop |
Type |
Description
|
| columns |
array |
Array of column key strings to display
|
| onToggle |
func |
Callback with (row, enabled) when a toggle changes
|
| rows |
array |
Array of row objects with label, name, type, enabled, and optional schema
|
| sx |
object |
Additional MUI sx styles for the table
|
Internal State
| State Variable |
Type |
Description
|
| nodeConfig |
object |
Grouped node configuration with nodeIds and params per node label
|
| nodeConfigExpanded |
object |
Tracks which node accordions are expanded
|
| overrideConfigStatus |
bool |
Master toggle for enabling override configuration
|
| nodeOverrides |
object |
Per-node override settings keyed by node label
|
| variableOverrides |
array |
Array of variable override objects with id, name, type, enabled
|
API Dependencies
- configApi.getConfig - Fetches configurable node properties for the chatflow
- variablesApi.getAllVariables - Fetches all defined variables
- chatflowsApi.updateChatflow - Saves the override configuration
Usage Examples
Basic Usage
import OverrideConfig from '@/ui-component/extended/OverrideConfig'
const ApiConfigTab = ({ chatflow }) => {
return (
<OverrideConfig
dialogProps={{ chatflow }}
/>
)
}
Related Pages
Page Connections
Double-click a node to navigate. Hold to expand connections.