{
  "settings": [
    {
      "type": "text",
      "id": "heading",
      "label": "Heading",
      "default": "Hello, world!"
    },
    {
      "type": "select",
      "id": "layout",
      "label": "Layout",
      "options": [
        {
          "value": "full_width",
          "label": "Full width",
          "kiwi_extra": {
            "icon": "fa fa-arrows-alt-h"
          }
        },
        {
          "value": "contained",
          "label": "Contained",
          "kiwi_extra": {
            "icon": "fa fa-compress"
          }
        }
      ],
      "default": "full_width",
      "kiwi_extra": {
        "labeled": true
      }
    },
    {
      "type": "range",
      "id": "padding",
      "min": 0,
      "max": 100,
      "step": 5,
      "unit": "px",
      "label": "Padding",
      "default": 20
    }
  ]
}

Properties

type
string
required
The type of setting input. Available types:
id
string
required
Unique identifier for the setting. Must be unique within the section.
label
string
required
The label shown in the theme editor for this setting. It may be translated using t: prefix plus a valid key from schema translation files. More details can be found in Locales.
default
any
Default value for the setting. Type depends on the setting type.
info
string
Additional information shown below the setting in the theme editor. It may be translated using t: prefix plus a valid key from schema translation files. More details can be found in Locales.
options
array
For select settings, an array of options with value, label and icon properties.
min
number
For range settings, the minimum allowed value.
max
number
For range settings, the maximum allowed value.
step
number
For range settings, the step increment.
unit
string
For range settings, the unit to display (e.g., “px”, “sec”).
kiwi_extra
object
Additional properties for the setting. Currently supported:
  • hidden: boolean value, indicates whether this setting should be displayed in Theme Editor’s configuration bar
  • validations: Apply validations to this setting before saving. Currently supported:
    • required: Boolean value. If true, this setting must be filled with a valid value