Octop config.json Reference: All Server Configuration Fields
Octop generates config.json inside ~/.octop/ on its first run. You can edit the file directly at any time to change server behavior — no reinstall needed. Environment variables always take priority over file values, so any OCTOP_* variable you export will override the corresponding key in this file.
A corrupt config.json is a hard error. Octop names the path and parser position, then refuses to start or rewrite the file. It never treats a broken file as empty — that used to wipe other settings (for example a PostgreSQL database section) and silently fall back to SQLite. Fix the JSON and retry.
Field reference
Core settings
database section
Avoid storing the PostgreSQL password in config.json in production — use the OCTOP_DATABASE_PASSWORD environment variable instead, and restrict the file's permissions to your service account.
tls section
See TLS & Service for the full walk-through, including self-signed certificate generation.
backup section
Override with OCTOP_BACKUP_AUTO_ENABLED, OCTOP_BACKUP_SCHEDULE, OCTOP_BACKUP_RETENTION_COUNT, and OCTOP_BACKUP_INCLUDE_*. See Backup & Restore.
Example config.json
Set "enable_api_docs": true to unlock the interactive Scalar API explorer at /api/docs. It lets you browse every endpoint, inspect request/response schemas, and send test requests directly from your browser — ideal when building integrations or writing automation scripts.
Configuration changes in config.json take effect the next time you restart the server. Run octop service restart if Octop is running as a system service, or stop and re-run octop run for foreground mode.

