Skip to main content

Platform Settings

Administrators can configure platform-wide settings that affect all users via the dashboard or GET/PUT /api/v1/admin/settings.

tip

For the full request/response schema, see the interactive API Reference.

Get Settings

GET /api/v1/admin/settings

Returns all platform settings as a list of key-value entries.

Update Settings

Settings are updated in bulk by supplying an array of key-value pairs:

PUT /api/v1/admin/settings
{
"settings": [
{ "key": "registration_enabled", "value": "true", "type": "bool" },
{ "key": "retention_days", "value": "60", "type": "int" }
]
}

Keys prefixed with app. are reserved and cannot be modified.

Available Settings

KeyTypeDefaultDescription
registration_enabledboolfalseAllow new user self-registration
require_email_verificationbooltrueRequire email verification on sign-up
require_domain_verificationbooltrueRequire domain ownership verification before sending
default_rate_limit_hourlyint100Default hourly send limit for new workspaces
default_rate_limit_dailyint1000Default daily send limit for new workspaces
max_batch_sizeint100Default max recipients per batch send
max_attachment_size_mbint10Default max attachment size in MB
retention_daysint30Days to retain email logs
audit_log_retention_daysint90Days to retain audit log entries
webhook_delivery_retention_daysint30Days to retain webhook delivery history
global_bounce_thresholdint5Platform-wide bounce rate threshold (percent)
smtp_timeout_secondsint30SMTP connection timeout in seconds
maintenance_modeboolfalsePut the platform in maintenance mode
allowed_signup_domainsstring""Comma-separated list of allowed sign-up email domains (empty = all)
two_factor_requiredboolfalseRequire 2FA for all users
login_rate_limit_countint10Max login attempts per window
login_rate_limit_window_minutesint15Rate limit window duration in minutes
email_content_visibilityboolfalseShow full email content (body/HTML) in logs and detail views
custom_headers_enabledboolfalseAllow workspaces to add custom email headers