This guide sequences the first week with mailglass. Work through the steps in order — each one builds on the previous. The guides linked here are the same ones you will keep returning to as your integration matures.

Week 1 arc

  • Getting started — Install the library, configure your adapter, mount the preview and webhook routes, and send your first message.

  • What you can do with mailglass — A job-by-job map of the ten things mailglass is built to handle, from auth sends to suppression management. Read this once to see the full scope, then return when a specific job comes up.

  • Authoring mailables — Define message builders using Mailglass.Mailable. Covers the builder API, HTML and text bodies, subject lines, from/to setters, and how to attach metadata for event correlation.

  • Preview — Use the dev dashboard to render and inspect your mailables before they reach a provider. The preview runs your production render pipeline, so what you see matches what gets sent.

  • Webhooks — Mount webhook ingest, verify provider signatures, and handle the normalized event taxonomy. Covers Postmark, SendGrid, and Mailgun first-party verifiers.

  • Testing — Test your mailables with the Fake adapter. Covers Mailglass.Adapters.Fake, Mailglass.TestAssertions, and the cross-process, Oban, and PubSub test lanes.

  • Telemetry and operating — Attach handlers to the structured telemetry events mailglass emits for rendering, dispatch, and webhook ingest. Understand what each event carries so you can build dashboards and alerts.

Going deeper

Once the week-1 arc is solid, these guides cover the next layer:

  • Multi-tenancy — Route mail through per-tenant adapters using the Mailglass.Tenancy behaviour and adapter_ref configuration.

  • DKIM setup — Configure DKIM signing through your ESP for improved deliverability.

  • List-Unsubscribe — Add RFC 8058 List-Unsubscribe headers and wire suppression callbacks.

  • Migrating from Swoosh — Adopt mailglass alongside an existing raw-Swoosh integration using the incremental-adoption mechanics.