Settings
The Settings module stores per-account configuration for platform behaviour — notification preferences, security policies, and feature-scoping rules. Settings are key/value pairs resolved at runtime by modules that need tenant-specific configuration.
Note: The Settings module's service layer is in active development. The endpoints below reflect the current auto-CRUD surface. For reading and writing settings programmatically today, the System module's
settingsmodel is the primary interface.
Authentication
All Settings endpoints require a valid session. Security-related settings require system:admin permission.
Data models
All Settings models at /api/settings/{model}:
GET /api/settings/{model}
POST /api/settings/{model}
GET /api/settings/{model}/{id}
PUT /api/settings/{model}/{id}
DELETE /api/settings/{model}/{id}
Use GET /api/data/models?filter[moduleKey]=settings for the full current model list.
Settings vs System settings
Two settings surfaces exist:
| Surface | Path | Use case |
|---|---|---|
| System settings | /api/system/settings |
General key/value config (API keys, SMTP, etc.) — managed by the System module |
| Settings models | /api/settings/{model} |
Structured configuration records (notification rules, security policies, scope definitions) — managed by this module |
Common patterns
Reading notification settings
GET /api/settings/notificationSettings?filter[accountKey]=acme-corp
Updating a security setting
PUT /api/settings/securitySettings/<id>
{
"mfaRequired": true,
"sessionTimeoutMinutes": 60,
"allowedIpRanges": ["10.0.0.0/8"]
}
API sections
These sections are available in the Settings API Reference: