Frequently asked questions

Can I lose access to my instance if my license lapses?

No — your data is never held hostage. A lapsed or unreachable license pauses new sending and reply-checking (see License & activation issues), but you can still log in, view everything, and export data. There's also a grace period before a temporary connectivity issue affects anything at all.

Are my connected accounts' credentials stored securely?

Yes. Connected-account OAuth tokens and SMTP/IMAP passwords are encrypted at rest (AES-256-GCM) before they ever touch the database — the same approach tools like n8n use for stored credentials. The encryption key itself lives outside the database: either an env var you set (SUBSIMAIL_ENCRYPTION_KEY), or a key file generated once alongside your data directory if you don't set one. Either way, a copied or leaked database file alone isn't enough to recover any credential from it. Your own login password was already one-way hashed (Argon2) and was never affected by this.

Can I try SubsiMail locally before pointing it at a real domain?

Yes — localhost/127.0.0.1 is treated as a wildcard for license domain binding: any port works, and you won't need to reconnect or re-activate if the port changes between runs (a real domain still binds to that exact domain, as normal). This is meant for exactly this case: evaluating the product, or running it locally during development, before you're ready to bind a license to your real domain.

Can one campaign use multiple sending accounts?

No, a campaign sends from exactly one connected account. To split volume across multiple inboxes, create separate campaigns, each on its own account, enrolling different lists (or the same list split into smaller ones).

Can I edit a step after contacts are already enrolled?

Yes — editing a step's subject or body applies to anyone who hasn't reached that step yet. Contacts who already received it keep what they were sent (their thread doesn't retroactively change).

Can I move my install to a new server?

Yes. Copy your data directory (the SQLite database and its uploads) to the new server, install SubsiMail there the same way, and point DATABASE_URL at the copied file. If the domain changes too, update it on your account's License section and re-activate with a freshly signed token.

Does SubsiMail back up my data?

Not automatically — it's a single SQLite file (plus an uploads folder for logos/avatars), so back it up the same way you'd back up any self-hosted app's data: a scheduled copy of the Docker volume or data/ directory to storage you control.

I lost the super admin password — what now?

There's no in-app reset for the super admin specifically, since nothing outranks that role to approve one. Recovery is a command run directly on the server hosting your instance, not a self-service web flow — the same pattern used by tools like Django, Nextcloud, and Ghost for their own top-level admin recovery.

Run reset-super-admin with the new password against the same instance:

docker compose run --rm subsimail reset-super-admin 'your-new-password'

On a Linux binary / Windows .exe install, stop the running process first, then run it from the same folder:

./subsimail reset-super-admin 'your-new-password'

It sets the new password, re-enables the account if it was disabled, and signs out every existing session for it. Then log in with the super admin's email and the password you just set.

Where do I ask a question or report a bug?

The Support forum — open to anyone to read and search (no login needed), and free to post a new ticket once you're logged in with your subsimail.com account. It doubles as a searchable archive, so it's worth checking before you post in case someone's already hit the same thing. One thing worth knowing going in: it's public, so don't include passwords, license tokens, or other sensitive details in a ticket.