Skip to main content

Settings

The Settings page (/settings) is where administrators configure an O.D.I.N. instance: scheduling defaults, notifications, users and sign-in, integrations, Vigil AI, branding, the license, backups and logs. It is split into tabs. This page describes what each tab contains, who can use it, and which license tier each part needs.


Who Can Open Settings​

Settings is an admin-only page. The route checks the settings page permission, which by default is granted only to the Admin role. Users without access are sent back to the dashboard, and the Settings item is hidden from their sidebar.

The Admin role can never be removed from the settings page in the permission editor, so an admin can always reach it.

Within Settings, many system-wide controls need a platform administrator: an admin who is not assigned to an organization. Admins who belong to an organization can open Settings, but the server rejects their changes to system-wide settings such as the license, backups, OIDC, SMTP, webhooks, branding, the IP allowlist and logs. Where a control is limited to platform administrators, this page says so.


Tabs at a Glance​

TabContainsAvailability
GeneralInterface language, Spoolman, blackout hours, job approval, interface mode, education mode, host IP for camera streamingEvery tier
NotificationsBrowser push, per-alert delivery preferences, SMTP emailEvery tier; SMTP section needs Pro or higher
AccessUsers and groups, permissions, OIDC and MFA, API tokens and sessions, quotas and IP allowlist, organizationsEvery tier; some sections need a higher tier (see below)
IntegrationsWebhooksPro or higher (tab disabled below Pro)
Vigil AIGlobal detection settings, per-printer detection settings, ONNX modelsEvery tier; shown only in Advanced interface mode
BrandingWhite-label branding editorPro or higher (tab disabled below Pro)
LicenseCurrent license, activation, offline activation, license file uploadEvery tier
SystemDatabase stats, troubleshooting, support bundle, backups, CSV export, data retention, scheduled reports, chargebacks, audit log link, personal data exportEvery tier; chargebacks and some report types need Pro or higher
LogsApplication log viewer for 10 log sourcesEvery tier

On a Community license the Integrations and Branding tabs are visible but disabled, and clicking them does nothing.


Opening a Tab Directly​

You can link straight to a tab with the tab query parameter:

/settings?tab=<general|notifications|access|integrations|vision|branding|license|system|logs>

The Vigil AI tab uses the id vision. An unrecognized value opens the General tab. For example, the system-notice banner links to /settings?tab=system#backups, which opens the System tab and scrolls to Database Backups.


General​

Interface Language​

A drop-down that sets the shared interface language for the whole instance. Only a platform administrator can change it. For everyone else the control is disabled.

Community Edition Card​

Shown only on a Community license. It displays the current tier, printers used against the printer limit, users against the user limit, and links to upgrade and to the documentation.

Spoolman Integration​

  • Spoolman URL: the address of your Spoolman server, for example http://192.168.1.100:7912
  • Test Connection: checks that O.D.I.N. can reach Spoolman
  • A Connected or Not Connected badge shows the current link status

Scheduler Settings​

Blackout Start and Blackout End set the window in which the scheduler should not start jobs (default 22:30 to 05:30, evaluated in UTC).

The Save Scheduling Settings button at the bottom of the tab saves the blackout times and the Spoolman URL together. Only a platform administrator can save them. Both are saved in the database and apply at once: blackout hours from the next scheduler run, the Spoolman URL to the next Spoolman request. If the server's SPOOLMAN_URL environment variable is set, it overrides the saved URL; the field is then read-only and the server refuses to change it.

Job Approval Workflow​

Shown only when the license includes job approval (Education and Enterprise). A switch turns on approval for viewer-role users: their jobs must be approved by an operator or admin before they can be scheduled. Operators and admins bypass approval. The switch saves as soon as you toggle it.

Interface Mode​

Choose between two modes:

ModeEffect
SimpleHides advanced features such as Orders, Products, Analytics and Maintenance from the sidebar. Also hides the Vigil AI settings tab.
AdvancedAll features visible (default)

Education Mode​

A switch that hides commerce features (Orders, Products, Consumables) from the sidebar and UI. It saves as soon as you toggle it; users may need to refresh their browser. Only a platform administrator can change it.

Network & Camera Streaming​

Host IP Address is the LAN IP of the server running O.D.I.N., used for WebRTC ICE candidates so browsers can connect to the go2rtc camera relay. The auto-detected address is shown under the field. If it starts with 172. it is a Docker-internal address, and you should enter the host's LAN IP instead. Without a correct value, camera streams may show a black screen. This field has its own Save button.


Notifications​

Browser Push Notifications​

Shown when the browser supports push. Enable Push or Disable Push subscribes or unsubscribes the current browser. If the browser has blocked notifications, the button is disabled.

Platform administrators also see Rotate push keys. Rotating the Web Push keys resets every browser's push subscription, and browsers register again on their next visit.

Alert Preferences​

A table with one row per alert type and a switch for each delivery channel (In-App, Push, Email):

Alert typeFires when
Print CompleteA print job finishes successfully
Print FailedA print fails or errors out
Spool LowFilament drops below the threshold
Maintenance DuePrinter maintenance is overdue
Bed CooledThe bed temperature drops below a threshold after a print
Job QueuedA job enters the print queue
Job SkippedA job is skipped (filament or printer mismatch)
Job Failed to StartA job fails to dispatch to a printer

Spool Low has a threshold slider from 50 g to 500 g in 25 g steps (default 100 g). Click Save Preferences to apply changes. Push delivery needs browser permission, and email delivery needs SMTP to be configured.

Email Notifications (SMTP)​

Shown only on Pro or higher. An on/off switch, plus these fields:

  • SMTP Host and Port (default 587)
  • Username and Password (once a password is saved it is not shown again; leave the field blank to keep it)
  • From Address
  • Application URL, used in password-reset links

Use Save SMTP to store the settings, and Send Test Email to check delivery (available when SMTP is enabled and a host is set). Only a platform administrator can read or change the SMTP configuration.


Access​

The Access tab is open on every tier. It is a set of collapsible sections, with Users & Groups open by default.

Users & Groups​

Users lists every account with role, status and last login, plus a group column when groups are licensed. You can search by name or email, filter by role, and:

  • Add User with username, email, password (or a welcome email with a generated password), role (Viewer, Operator or Admin), group and active status
  • Import CSV with the columns username,email,password,role. Role is optional and defaults to viewer.
  • Edit or Delete a user
  • Send password reset link (users with an email address)
  • Reset MFA (users who have MFA turned on)

On a Community license the user limit is 1. Once you reach it, Add User is replaced by a button that opens the upgrade prompt.

Groups appears only when the license includes user groups (Education and Enterprise). Each group has a name, an optional description and an optional owner (an operator or admin) who receives approval requests from group members.

Permissions​

On Pro or higher this section contains the permission editor. It has two grids of switches per role (Admin, Operator, Viewer):

  • Page Access: which roles can open each page
  • Action Permissions: which roles can perform each action

Admin access to the admin, settings and audit pages is locked on. Save Changes applies your edits, and Reset Defaults restores the factory defaults. Only a platform administrator can save or reset permissions.

The server enforces every switch, from the next request on:

  • Action Permissions guard every API route that performs the action, so a role without the action is refused (403) whether it uses the web UI, the native apps, an API token or a script. An API token acts with its owner's role, and its scopes still apply.
  • Page Access guards the page in the web UI (opening its URL directly sends a role without access back to the dashboard) and the API reads that exist only for that page (Timeline, Analytics and Education reports). Data that other pages also use, such as the printer and job lists, stays governed by the action permissions and roles.
  • The platform administrator (an admin with no organization) always keeps access, so the install cannot be locked out.
  • Routes outside the matrix keep a fixed role: your own account, sessions, tokens and devices; user, group and organization administration (admin); and platform settings such as license, backups, SSO, SMTP and webhooks (platform administrator).

The defaults reproduce the roles described in Users & Access Control: viewers can submit jobs (they wait for approval when approval mode is on) and resubmit their own rejected jobs; operators run production; adding or deleting printers, deleting models, editing orders and deleting products are admin-only.

Below Pro, this section shows a notice that custom role permissions need a Pro license.

Authentication (OIDC & MFA)​

Single sign-on (OIDC) is available on Pro or higher. Below Pro, this part shows a license notice instead. The fields are:

  • Enable single sign-on
  • Identity provider: Microsoft Entra ID, Google Workspace, or a generic OIDC provider
  • Login button label
  • OAuth client ID and OAuth client secret (once a secret is configured, leave the field blank to keep it)
  • Microsoft directory tenant ID (Microsoft) or Allowed Google Workspace domains (Google)
  • OIDC discovery URL and Login scopes
  • ODIN tenant for SSO users: the O.D.I.N. organization that new SSO users join
  • Create new SSO users: new identities are created as viewers in the selected organization

Only a platform administrator can read or change the OIDC configuration.

Two-Factor Authentication is available on every tier. It turns on TOTP for your own account: scan the QR code (or copy the secret) and enter a verification code to confirm. To turn MFA off, enter a current code.

Tokens & Sessions​

Both parts are available on every tier and apply to your own account.

  • API Tokens: create a token with a name, one or more scopes, and an optional expiry in days (blank means it never expires). The token value is shown once, at creation. Existing tokens list their scopes and can be revoked.
  • Active Sessions: lists your signed-in sessions with browser, device and IP address. You can revoke a single session, or use Sign out everywhere else.

Quotas & Restrictions​

Print Quotas appears only when the license includes print quotas (Education and Enterprise). It sets per-user limits on jobs, grams of filament and print hours, with a period of Daily, Weekly, Monthly or Semester, and shows current usage.

IP Allowlist is available on every tier. It restricts API access to specific IP addresses or CIDR ranges, for example 192.168.1.0/24. Only a platform administrator can change it.

Each API worker caches the allowlist for 2 seconds (set ODIN_IP_ALLOWLIST_CACHE_SECONDS, 0 to 30; 0 turns the cache off). A change takes effect at once on the worker that saved it and within that time on any other worker. If the allowlist cannot be read, requests are refused rather than allowed.

Organizations​

Available on every tier. New Org creates an organization (platform administrators only). For each organization you can:

  • add members and assign printers
  • open its settings: default filament type and color, quiet hours, a webhook URL and type, and branding overrides (app name and logo URL)
  • delete it (platform administrators only)

The organization branding overrides need the branding entitlement (Pro or higher).


Integrations​

The Integrations tab needs Pro or higher. Below Pro the tab is disabled.

It contains Webhooks, which send alerts to Discord, Slack, ntfy, Telegram, Pushover, WhatsApp, or a generic JSON endpoint. Each webhook has a name, type, URL and an optional list of alert types (Print Complete, Print Failed, Low Spool, Maintenance Due, Printer Errors). If you leave the list empty, the webhook receives every alert. Each webhook can be tested, enabled or disabled, and deleted. Only a platform administrator can manage webhooks.


Vigil AI​

The Vigil AI tab appears only in Advanced interface mode (see Interface Mode).

  • Global settings: Enable Vigil AI globally, frame retention (7 to 90 days), and the maximum number of vision threads. When the thread cap is reached, the tab lists the printers that are waiting.

  • Per-Printer Detection Settings: one card per printer with a camera, whether a stored camera URL or a built-in camera that was configured automatically. Each card has:

    • an Enabled switch
    • spaghetti, first-layer and detachment detection, each with an on/off switch and a confidence threshold slider (30% to 95%)
    • Auto-pause and Collect data options
    • a capture Interval of 5, 10, 15, 30 or 60 seconds

    Per-printer changes save immediately.

  • ONNX Models (platform administrators only): lists uploaded models with detection type, version and active state. Use it to activate a model or upload a new one.

See Vigil AI Detection for how detection works.


Branding​

The Branding tab needs Pro or higher. Below Pro the tab is disabled.

It opens the White-Label Branding editor, which has four sub-tabs and a live preview:

Sub-tabSettings
IdentityApp name, subtitle, footer text, support URL, primary and accent colors, brand logo, favicon
SidebarSidebar background, border, text, active background and active text colors
ContentPage, card, text and input colors
TypographyDisplay, body and monospace fonts

Use Save Changes to apply your edits, or Reset to restore the defaults. Only a platform administrator can save branding. See Branding & Customization for details.


License​

  • Current License: shows the tier, license terms, expiry date, maximum printers, maximum users and the installation ID (with a copy button)
  • Activate License: enter a license key to activate online. The license is bound to this installation.
  • Offline (air-gapped) activation: enter a challenge code from the license portal. Use it with a license key to download a signed activation request, or on its own to download a signed unactivation request.
  • Upload license file: upload a .license file
  • Remove license (revert to Community)

If the deployment mounts its license read-only, the activation controls are replaced by an Externally Managed License notice. Only a platform administrator can activate, upload or remove a license. See License & Tiers.


System​

SectionWhat it doesRequirements
DatabaseCounts of printers, models, active jobs and completed jobsNone
TroubleshootingRuns server and saved-printer checks and builds a support report you can review, download or attach to an email draft. No check starts a print.Admin
Support bundleDownloads diagnostic information and redacted logsPlatform administrator
Database BackupsCreate, download, delete and stage backups for restore, or upload a .db (SQLite) or .dump (PostgreSQL) backup to restore. A staged restore is applied on the next restart.Platform administrator
Data ExportCSV downloads of jobs, models, spools and filament usageOperator or Admin
Data RetentionHow many days to keep completed jobs, audit logs, timelapses and alert history (0 means keep forever). Nothing is deleted on a schedule; old data is removed only when an administrator runs cleanup.Platform administrator
Scheduled ReportsDaily, weekly or monthly emailed reports with a list of recipientsPlatform administrator. The job_summary and filament_consumption reports work on every tier. fleet_utilization, failure_analysis and chargeback_summary need Pro or higher.
Cost ChargebacksPer-user jobs, hours, grams and cost for a date rangePro or higher
Install AppInstalls O.D.I.N. as an app when the browser offers itNone
Audit LogLink to the /audit page. Exporting the audit log as CSV needs Enterprise.Admin; the audit-log data itself is limited to platform administrators
Privacy & DataExport My Data downloads your personal data (GDPR). Erase My Data anonymizes your account and signs you out.Every tier

See Backup & Restore for backup procedures.


Logs​

The Logs tab shows Application Logs and is limited to platform administrators. Pick one of 10 sources:

SourceLog
BackendMain API server
MQTTBambu MQTT monitor
MoonrakerKlipper/Moonraker monitor
PrusaLinkPrusaLink monitor
ElegooElegoo monitor
Vision AIVigil AI vision monitor
go2rtcCamera relay
TimelapseTimelapse capture
ReportsScheduled report runner
SupervisordProcess supervisor

The viewer has these controls:

  • level filters (ALL, DEBUG, INFO, WARNING, ERROR)
  • a text search (press Enter to apply it)
  • Refresh and Live Stream / Stop Stream
  • an Auto-scroll option and Clear
  • Older logs and Newer logs buttons to page through history

Matching search text is highlighted.


Tier Requirements​

Feature in SettingsTier
MFA, API tokens, sessions, IP allowlist, organizations, personal data export (GDPR)Every tier
Alert preferences, browser push, Spoolman, blackout hours, interface and education mode, Vigil AIEvery tier
Logs, backups, data retention, CSV data exportEvery tier
SMTP email, webhooks (Integrations tab), branding (Branding tab and organization branding overrides)Pro or higher
Custom role permissions, OIDC single sign-onPro or higher
Cost chargebacks and analytics-based scheduled reportsPro or higher
User groups, print quotas, job approval workflowEducation or Enterprise
Audit-log CSV export, MQTT event republishingEnterprise

See Also​