Skip to Content
ConfigurationEmail & Newsletters

Email & Newsletters

Tracearr sends two kinds of email. Alerts are what an automation routes to an email destination, the same way it routes to Discord or ntfy. Newsletters are a digest of what was added to a server over a window, sent to that server’s members on a schedule, with an unsubscribe link in every message.

Both go through one SMTP destination, one rendering package and one branding block. Nothing is sent through a provider’s HTTP API.

The email destination

Alerts and newsletters both need an email destination under SettingsNotificationsDestinations. Only the owner can add one. What every destination has in common is on the Notification destinations page. The rest of this section is the part specific to email.

Add the destination

Click Add destination and pick Email.

Pick a provider

Provider fills the SMTP host, port and security for the seven providers listed below. Custom leaves all three to you.

Fill the account

What goes in Username and Password differs by provider, and the description under each box names it for the provider you picked. From address is what recipients see, and it has to be an address the provider lets you send as.

Test it

Test opens the connection and checks the credentials first, then sends a message with the subject Test email from Tracearr (<destination name>). It goes to Alert recipients, or to the From address when that list is empty.

Provider presets

ProviderSMTP hostPortSecurity
Postmarksmtp.postmarkapp.com587STARTTLS
Resendsmtp.resend.com465TLS
Amazon SESemail-smtp.us-east-1.amazonaws.com587STARTTLS
Mailgunsmtp.mailgun.org587STARTTLS
SendGridsmtp.sendgrid.net587STARTTLS
Brevosmtp-relay.brevo.com587STARTTLS
Gmailsmtp.gmail.com587STARTTLS

Picking a provider writes those three values and nothing else, and you can edit any of them afterwards. Amazon SES and Mailgun EU need the region edited into the host.

The fields

FieldRequiredDefaultNotes
ProviderYesCustomFills the three fields below it from the table above
SMTP hostYesnoneA hostname or IP address, with no scheme, port or path
PortYes587A whole number from 1 to 65535
SecurityYesSTARTTLSSTARTTLS (usually port 587), TLS (usually port 465), or None (plain text, port 25)
UsernameNoblankLeave blank when the server needs no login
PasswordNoblankStored encrypted, and never read back into the form
Messages per secondYes2A whole number from 1 to 50
Message streamNoblankPostmark only, up to 64 characters, letters, digits and hyphens
From nameNoTracearrThe display name on the From header
From addressYesnoneThe address recipients see and reply to unless Reply-to is set
Reply-toNoblankOne address
Alert recipientsNoblankComma-separated addresses that alerts go to; newsletters ignore this list

Username and Password are optional, so a relay that wants no login works with both left blank.

Username and password by provider

Each provider names these two differently, and swapping them fails the test with SMTP authentication failed. Once you pick a provider the dialog shows the matching line under each box.

ProviderUsernamePassword
PostmarkYour Server API token.The same Server API token, or a stream token’s secret.
ResendThe word resend, exactly.Your Resend API key. The sender domain must be verified in Resend first.
Amazon SESThe SMTP user name from the SES console, not an IAM access key. Put your region in the host.The SMTP password from the SES console. Sandbox accounts send 200 messages a day to verified addresses only.
Mailgunpostmaster@yourdomain, not your Mailgun login.The SMTP password from that domain’s settings. A sandbox domain only reaches its authorized recipients.
SendGridThe word apikey, exactly.Your SendGrid API key.
BrevoYour Brevo login email.An SMTP key from SMTP & API > SMTP, not the API key.
GmailYour full Gmail address. Gmail sends from this address whatever the sender address says, and personal accounts stop near 500 recipients a day.An app password from Google Account > Security > 2-Step Verification > App passwords. Your account password is rejected.

Message stream

Postmark separates transactional and broadcast mail into streams. Put a stream ID in Message stream and Tracearr adds an X-PM-Message-Stream header carrying it to every message sent through this destination. Leave it blank on every other provider; nothing else reads the header.

Rate limit

Messages per second defaults to 2 and accepts 1 to 50. The limit is per Tracearr instance, so two instances behind one Redis send at twice the rate you set here. Stay under whatever your provider allows.

Host validation

SMTP host takes a bare hostname or IP address. Saving with a value that carries a scheme, a port or a path is refused, before anything tries to connect:

host: host must be a hostname or IP address without a scheme, port or path

Link-local addresses are refused as well, both 169.254.0.0/16 and fe80::/10. Private, loopback and CGNAT addresses are allowed, so a relay running on the same box or elsewhere on your LAN works.

Connection behaviour

Tracearr holds one pooled connection set per destination, capped at 2 connections carrying at most 100 messages each. Changing any connection field closes the pool and opens a new one.

TimeoutValue
Connection30 seconds
Greeting30 seconds
Socket120 seconds

Errors from the mail server

Three connection failures are rewritten into text you can act on. Everything else the mail server says is passed through as it arrived.

SMTP authentication failed for <username> at <host>

The server took the connection and rejected the credentials. With Username blank the message reads anonymous, which means the server wanted a login you did not give it.

Could not connect to <host>:<port>

Nothing answered. The connection was refused, it timed out, or the hostname did not resolve.

TLS failed for <host>:<port>; check the security setting

The TLS handshake failed, usually because Security does not match the port. Port 465 wants TLS; 587 wants STARTTLS.

One more comes from Tracearr rather than from the mail server:

No alert recipients on this destination. Add one under Settings, Destinations.

An automation sent an alert to a destination whose Alert recipients list is empty. Newsletters do not hit this, because they address their own recipients.

Alerts over email

An automation’s Send Notification action reaches an email destination the same way it reaches any other. The alert goes to the addresses in Alert recipients, and to nothing else. A destination can also be given every violation on its own with the Receive violations switch, which stays disabled until that list holds an address.

Each alert renders as one card: the event title, a severity label reading Info, Warning or High, the message, and the time in UTC. A violation adds the user, the rule, the severity, and the server when the violation names one. Something added to or upgraded in a library adds its poster, the resolution, dynamic range and codec lines, and links out to the item. When an external URL is set under SettingsAccessRemote access, the mail ends with an Open Tracearr link.

The From header carries From name, or Tracearr when you left it blank, and the display name inside the message is the server the event is about.

SPF, DKIM and DMARC

Whether a message lands in the inbox is decided by the receiving provider, and the three DNS records below are what it checks. They live on the domain of the From address, in your DNS host, not in Tracearr.

  • SPF lists which servers may send for the domain. Your provider gives you the record to add; it looks like v=spf1 include:spf.example-provider.com ~all.
  • DKIM signs each message with a key the provider holds. The provider gives you one or more CNAME or TXT records to add, and signing starts once they resolve.
  • DMARC tells receivers what to do when SPF or DKIM fail. Start with v=DMARC1; p=none; rua=mailto:you@yourdomain on _dmarc.yourdomain and tighten to quarantine once reports look clean.

The newsletter editor’s Readiness list flags the one mismatch it can see from Tracearr: “The from address and the SMTP username sit on different domains; some providers refuse that.”

Branding

SettingsNotificationsEmail holds the block every email uses, alerts and newsletters alike.

SettingDefaultNotes
LogoTracearrTracearr’s own mark, no logo, or an image at an http or https URL of up to 500 characters
Accent color#0ea0b3A six-digit hex color
Footer textblankOne line under every email, up to 500 characters
Postal addressblankUp to 500 characters; some jurisdictions expect one on bulk mail
Offer unsubscribe by email toooffAdds a mailto form to the List-Unsubscribe header

The mailto form points at the destination’s Reply-to address, so someone has to read that mailbox and act on what arrives. The link in the message footer works either way.

Tracearr’s own logo travels as an attachment. A logo you point at by URL is fetched by the recipient’s mail client instead.

Newsletters

Newsletter scheduling, windows, sections and send history are being documented on their own page at /configuration/email/newsletters. Until it is published, the newsletter editor under SettingsNotificationsNewsletters carries the same information in its field descriptions and its Readiness list.

Recipients and unsubscribes

Who receives a newsletter, how members get a contact email, and the suppression list are being documented at /configuration/email/recipients. Until it is published, the recipients panel in the newsletter editor and the Suppressed addresses list under SettingsNotificationsEmail are where those are managed.

Last updated on