API: Settings
This section covers server and plugin settings management via the API.
Info
Writing settings requires the MANAGE_USERS authority.
Get All Settings
Retrieve the current values of all server and plugin settings.
Response:
The response has two top-level maps:
server— map ofkey → settingfor server-level settings.plugin— map ofpluginId → (key → setting)for plugin-specific settings.
Each setting object contains:
| Field | Type | Description |
|---|---|---|
key |
string | Unique setting identifier |
name |
string | Human-readable name |
description |
string | null | Optional description |
type |
string | Setting type: TEXT, INTEGER, DECIMAL, BOOLEAN, DATETIME, ENUM, MULTI_ENUM |
editAllowed |
boolean | Whether the value can currently be changed |
editDisallowedReason |
string | null | Reason editing is blocked, if applicable |
defaultValue |
any | Default value as JSON |
currentValue |
any | Current active value as JSON |
options |
array | For enum types — list of { name, description, value, disabled, disabledReason } |
Get a Single Setting
Retrieve one setting by its key.
Response: same structure as a single entry from GET /api/v1/settings.
Update Multiple Settings
Update server and/or plugin settings in a single request. Only the keys you include are changed.
Set a key's value to null to reset it to its default.
Response: the full updated settings object (same shape as GET /api/v1/settings).
Update a Single Setting
Update one setting by its key.
Set value to null to reset to the default.
Response: the updated single setting object.