Skip to main content

Manifest settings

Configurable global settings. They're declared in your manifest and set by community members with the Manage Apps permission during and after installation.

note

This feature is a work in progress.

Details

Namesettings
Typeobject
RequiredNo

Structure

Settings are organized into groups, each containing multiple setting items.

Groups

PropertyTypeRequiredDescription
keystringYesMachine-friendly identifier for this group.
titlestringYesHuman-readable title shown above this group.
itemsarrayYesList of individual setting definitions in this group.

Setting items

Each item in a group can have the following properties:

PropertyTypeRequiredDescription
keystringYesMachine-friendly setting identifier.
titlestringYesLabel shown to the user for this setting.
descriptionstringNoOptional explanatory text for this setting.
requiredbooleanYesWhether the user must provide a value.
confirmationstringYesText for the button users click to save this setting.

Input types

Each setting item must include exactly one of these input type configurations:

TypeDescription
textFree-form text input with optional regex validation.
numberNumeric input with optional min/max/step.
checkboxBoolean toggle.
memberSelect one or more community members.
roleSelect one or more community roles.
roleAndMemberCombined selector for users and roles.
channelSelect one or more channels.
channelGroupSelect one or more channel groups.
selectDropdown with custom label/value options.
timestampISO 8601 timestamp picker.
timeTime-of-day picker (HH:MM:SS).
dateDate picker (YYYY-MM-DD).
colorColor picker (hex code).
buttonAction button displayed in settings.

Example

{
"groups": [
{
"key": "general",
"title": "General",
"items": [
{
"key": "notifyOnJoin",
"title": "Notify on new join",
"description": "Send a message when someone joins the raid.",
"required": false,
"confirmation": "Update",
"checkbox": {
"defaultValue": true
}
}
]
}
]
}