Email and invites
Set up outgoing email so Bud can send invitations, verification links, password resets and email changes.
Member invitations, email verification, and password resets are delivered by email: configure SMTP or invites can’t go out.
SMTP is optional for an installation that uses only the initial administrator. It is required for invitations, password resets, email verification, and approved email changes.
SMTP settings
Section titled “SMTP settings”Both apps read the same keys (prefixed aliases like BLOOM_SMTP_HOST are accepted when both run on one host):
SMTP_ENABLED=trueSMTP_HOST=smtp.example.comSMTP_PORT=587SMTP_USERNAME=replace-with-smtp-usernameSMTP_PASSWORD=replace-with-smtp-passwordSMTP_FROM_EMAIL=noreply@example.comSMTP_REPLY_TO=support@example.comSMTP_STARTTLS=trueSMTP_SSL=falseSMTP_TIMEOUT_SECONDS=30SMTP_ENABLED is false in the shipped .env.example. Set it to true and configure the SMTP host, sender, authentication, and TLS values before using the email workflows. Every key is listed in the Configuration reference.
Set APP_BASE_URL to your public Bud URL. Bud uses it in the links it emails (invites, email verification, password resets) and in report links.
Link lifetimes
Section titled “Link lifetimes”Token lifetimes are configurable: invites last 72 hours, email verification 24, password resets 2.
| Link | Default lifetime | Setting |
|---|---|---|
| Invitation | 72 hours | INVITE_TOKEN_TTL_HOURS |
| Email verification | 24 hours | EMAIL_VERIFICATION_TOKEN_TTL_HOURS |
| Password reset | 2 hours | PASSWORD_RESET_TOKEN_TTL_HOURS |
One-time links (invitation, email verification, password reset, email change) carry their token only in the URL fragment and are single-use. This keeps tokens out of request targets, server logs, and the Referer header. Revoking an invitation revokes its link.
Email changes
Section titled “Email changes”Email changes require the current password. Administrators confirm the change from their current mailbox, then verify the new mailbox. Other users need administrator approval before verification is sent to the new address: a user requests the change, and an administrator approves or rejects it. The login changes only once the new mailbox confirms. Completing the change ends existing sessions, so sign in again.
Confirming an administrator’s own email change stays with the Admin base role. It is never given through a group.
Other email Bud sends
Section titled “Other email Bud sends”- First-run setup. Creating the first administrator at
/setupsends a confirmation email, best effort. - Access requests. A request for access is emailed to every Admin and every user with
access.manage, with a link to Access. If the email fails, the request is kept and the user is told. See Roles and access. - Report requests from Bloom. Configured SMTP also emails active report publishers. Unsent email is retried and successful recipients are recorded. See Report requests.
Cloudron
Section titled “Cloudron”On Cloudron, Bud takes its mail settings from the app’s optional Email addon. Email (invitations, password resets, and address changes) works only if you enabled that addon. Without it, the administrator you create at /setup is the only way in. See Install on Cloudron.



