Skip to main content
This page covers every variable in nous.env.example. A variable is Required for any instance to work, Optional when it turns on one feature, or Cloud only when it serves OpenNous Cloud and a self-hosted instance leaves it empty. Variables starting with VITE_ are baked into the frontend at build time. Changing one needs a rebuild, not just a restart.

Domains

Set APP_URL or API_URL yourself only when the app or API is not served on those domains.

Database and auth

Bundled stack

On the bundled stack, node scripts/selfhost-keys.mjs nous.env writes these. It keeps values that are already set. Optional on the bundled stack:

Core

Email

Integrations

Most integrations are connected per workspace with the provider’s own key, in Settings → Integrations. These are the ones that need instance settings.

Inbound webhook secrets

Set the ones you use to a random string, and enter the same value in that tool’s webhook settings. Leave the rest empty.

LinkedIn engagement run

Monitoring

Point an uptime monitor at https://api.yourdomain.com/readyz. It returns 503 when the database is down.

Forms

Cloud only

Leave these empty on a self-hosted instance.