Legend
CompoundInputProperty
Compound select input property. Allows selecting from options where each option contains multiple fields. Thefields array specifies which fields from the selected value to expose.Note: CEL validation ensures values is always provided for compound inputs.string
required
Unique identifier for this input.(minLen:1)
string
required
Text shown above the form field(minLen:1)
string
Help text shown below the label
boolean
Lock this field after first deploy — prevents changes to destructive settings
string[]
Input IDs from earlier module versions whose values this input now holds.
Upgrading an existing instance to this version does not trip the immutable
input check for the listed inputs or for this one, so a module version can
rename or merge immutable inputs without forcing a destroy and recreate.
InvalidWhenRule[]
Input value combinations this input rejects.
A shown input fails validation when one rule matches; the form shows that rule’s message on the input.See: InvalidWhenRule
boolean
Render this field as collapsible (tag when collapsed, full field when expanded)Supported for all value-producing input types.
Consecutive collapsible fields are automatically grouped together.
Divider inputs break collapsible groups.
enum
required
Input type for compound select dropdownsAllowed values:
compoundstring[]
required
List of field names to expose from the selected compound value(minItems:1)
map<string,string | number | integer | boolean | string[]> | "$values:first"
Default value — a record with the field values(templateable)
boolean
Whether the field must be filled in
CompoundValues
Allowed values — static array of options or dynamic reference (required for compound)See: CompoundValues
string
Message shown when the dropdown has no available options
boolean
Use the current deployed value as the minimum allowed value
ObjectArrayInputProperty
string
required
Unique identifier for this input.(minLen:1)
string
required
Text shown above the form field(minLen:1)
string
Help text shown below the label
boolean
Lock this field after first deploy — prevents changes to destructive settings
string[]
Input IDs from earlier module versions whose values this input now holds.
Upgrading an existing instance to this version does not trip the immutable
input check for the listed inputs or for this one, so a module version can
rename or merge immutable inputs without forcing a destroy and recreate.
InvalidWhenRule[]
Input value combinations this input rejects.
A shown input fails validation when one rule matches; the form shows that rule’s message on the input.See: InvalidWhenRule
boolean
Render this field as collapsible (tag when collapsed, full field when expanded)Supported for all value-producing input types.
Consecutive collapsible fields are automatically grouped together.
Divider inputs break collapsible groups.
enum
required
Input type for structured object arraysAllowed values:
object_arrayObjectArrayDefaultItem[] | null
boolean
Whether the field must contain at least one item
string
Label for each array item, used in add buttons and editor headers
ObjectCollectionItemTitleConfig
User-facing title template for each array item.See: ObjectCollectionItemTitleConfig
string | null
User-facing description template shown as a secondary line for each array item.
Supports placeholders like {field_id}.(templateable)
InputProperty[]
required
ObjectInputProperty
Object editor input property. Allows users to enter arbitrary object data with syntax highlighting and validation. Supports both YAML and JSON formats in the UI.string
required
Unique identifier for this input.(minLen:1)
string
required
Text shown above the form field(minLen:1)
string
Help text shown below the label
boolean
Lock this field after first deploy — prevents changes to destructive settings
string[]
Input IDs from earlier module versions whose values this input now holds.
Upgrading an existing instance to this version does not trip the immutable
input check for the listed inputs or for this one, so a module version can
rename or merge immutable inputs without forcing a destroy and recreate.
InvalidWhenRule[]
Input value combinations this input rejects.
A shown input fails validation when one rule matches; the form shows that rule’s message on the input.See: InvalidWhenRule
boolean
Render this field as collapsible (tag when collapsed, full field when expanded)Supported for all value-producing input types.
Consecutive collapsible fields are automatically grouped together.
Divider inputs break collapsible groups.
enum
required
Input type for object editor fieldsAllowed values:
objectany | null
Default object value for the field(templateable)
string
Placeholder text when the field is empty
boolean
Whether the field must be filled in
ObjectMapInputProperty
string
required
Unique identifier for this input.(minLen:1)
string
required
Text shown above the form field(minLen:1)
string
Help text shown below the label
boolean
Lock this field after first deploy — prevents changes to destructive settings
string[]
Input IDs from earlier module versions whose values this input now holds.
Upgrading an existing instance to this version does not trip the immutable
input check for the listed inputs or for this one, so a module version can
rename or merge immutable inputs without forcing a destroy and recreate.
InvalidWhenRule[]
Input value combinations this input rejects.
A shown input fails validation when one rule matches; the form shows that rule’s message on the input.See: InvalidWhenRule
boolean
Render this field as collapsible (tag when collapsed, full field when expanded)Supported for all value-producing input types.
Consecutive collapsible fields are automatically grouped together.
Divider inputs break collapsible groups.
enum
required
Input type for structured object mapsAllowed values:
object_mapmap<string,any | null>
Default map value for the field(templateable)
boolean
Whether the field must contain at least one entry
MapKeyConfig
Metadata for the map entry key field.See: MapKeyConfig
ObjectCollectionItemTitleConfig
User-facing title template for each map item.See: ObjectCollectionItemTitleConfig
string
Label for each map item, used in add buttons and editor headers
InputProperty[]
required
RefInputProperty
Module reference input property. Allows selecting another module instance or manually entering fallback inputs.string
required
Unique identifier for this input.(minLen:1)
string
required
Text shown above the form field(minLen:1)
string
Help text shown below the label
boolean
Lock this field after first deploy — prevents changes to destructive settings
string[]
Input IDs from earlier module versions whose values this input now holds.
Upgrading an existing instance to this version does not trip the immutable
input check for the listed inputs or for this one, so a module version can
rename or merge immutable inputs without forcing a destroy and recreate.
InvalidWhenRule[]
Input value combinations this input rejects.
A shown input fails validation when one rule matches; the form shows that rule’s message on the input.See: InvalidWhenRule
boolean
Render this field as collapsible (tag when collapsed, full field when expanded)Supported for all value-producing input types.
Consecutive collapsible fields are automatically grouped together.
Divider inputs break collapsible groups.
string
required
Reference to another module type — format is “$ref:<module-type>”
RefFallbackInputProperty[]
Input definitions that copy values from the selected referenced module into
this module’s input values. Each mapped input is saved as a normal input on
the current module. When users do not select a module instance, these same
fields are shown for manual entry.
Nested module references are not allowed in mapped inputs.See: RefFallbackInputProperty
boolean
Whether the module reference is required
RefFallbackInputProperty
Input properties allowed inside module reference fallback inputs. Nested module references are intentionally excluded to prevent references from recursively declaring more references through their mapped inputs. Keep this union in sync with InputProperty except for the ref member and the collection variants, which recursively use this fallback union.Discriminated union. Thetype field selects which schema applies.RefFallbackObjectArrayInputProperty
string
required
Unique identifier for this input.(minLen:1)
string
required
Text shown above the form field(minLen:1)
string
Help text shown below the label
boolean
Lock this field after first deploy — prevents changes to destructive settings
string[]
Input IDs from earlier module versions whose values this input now holds.
Upgrading an existing instance to this version does not trip the immutable
input check for the listed inputs or for this one, so a module version can
rename or merge immutable inputs without forcing a destroy and recreate.
InvalidWhenRule[]
Input value combinations this input rejects.
A shown input fails validation when one rule matches; the form shows that rule’s message on the input.See: InvalidWhenRule
boolean
Render this field as collapsible (tag when collapsed, full field when expanded)Supported for all value-producing input types.
Consecutive collapsible fields are automatically grouped together.
Divider inputs break collapsible groups.
enum
required
Input type for structured object arraysAllowed values:
object_arrayObjectArrayDefaultItem[] | null
boolean
Whether the field must contain at least one item
string
Label for each array item, used in add buttons and editor headers
ObjectCollectionItemTitleConfig
User-facing title template for each array item.See: ObjectCollectionItemTitleConfig
string | null
User-facing description template shown as a secondary line for each array item.
Supports placeholders like {field_id}.(templateable)
RefFallbackInputProperty[]
required
Input definitions allowed inside a module reference’s mapped inputs.See: RefFallbackInputProperty(minItems:1)
RefFallbackObjectMapInputProperty
string
required
Unique identifier for this input.(minLen:1)
string
required
Text shown above the form field(minLen:1)
string
Help text shown below the label
boolean
Lock this field after first deploy — prevents changes to destructive settings
string[]
Input IDs from earlier module versions whose values this input now holds.
Upgrading an existing instance to this version does not trip the immutable
input check for the listed inputs or for this one, so a module version can
rename or merge immutable inputs without forcing a destroy and recreate.
InvalidWhenRule[]
Input value combinations this input rejects.
A shown input fails validation when one rule matches; the form shows that rule’s message on the input.See: InvalidWhenRule
boolean
Render this field as collapsible (tag when collapsed, full field when expanded)Supported for all value-producing input types.
Consecutive collapsible fields are automatically grouped together.
Divider inputs break collapsible groups.
enum
required
Input type for structured object mapsAllowed values:
object_mapmap<string,any | null>
Default map value for the field(templateable)
boolean
Whether the field must contain at least one entry
MapKeyConfig
Metadata for the map entry key field.See: MapKeyConfig
ObjectCollectionItemTitleConfig
User-facing title template for each map item.See: ObjectCollectionItemTitleConfig
string
Label for each map item, used in add buttons and editor headers
RefFallbackInputProperty[]
required
Input definitions allowed inside a module reference’s mapped inputs.See: RefFallbackInputProperty(minItems:1)