Share one captured email, and know the moment the next one lands

Two small features that go together: a read-only link to a single captured message for a client or a PM, and browser notifications when a new email arrives in a project you follow. Including why we never put a push endpoint in a page.

The Mailclutch team2 min read

Two features shipped together because they answer the same complaint from opposite ends. Somebody outside the team needs to see one message; somebody inside the team is tired of refreshing a page waiting for it.

Any captured message can be turned into a read-only page and handed to whoever needs to look at it. No account, no seat, no install.

The controls are the same ones a project-wide link has, because they are the same object at a different scope: a preview mode for the person approving and a developer mode whose tabs — HTML source, plain text, raw message, headers, spam analysis, attachments — are opted into one by one, plus an optional password, an optional expiry, its own locale, a downloads switch and your branding where your plan includes it. Views and last-viewed are counted.

Revoking is immediate, and the record of the link outlives it by thirty days so you can still answer what was shared and when.

Which one you reach for is a question of size. A single template going to a designer is one email. A signup flow going to a client is a project.

The notification

Following a project turns on a browser notification for every message that arrives in it. It is standard Web Push, so it works with the browser closed and does not need a tab open on Mailclutch.

The registration stores what a push subscription needs — the endpoint the browser gave us and the two keys that encrypt the payload — plus the browser, platform and device, so the settings page can list "Firefox on macOS" rather than a URL fragment nobody recognises.

There is one detail in there worth pulling out. The settings page has to mark which registration is this browser, and the only thing the page knows about itself is its own endpoint. A push endpoint is a URL anyone who has it can post to, so putting the list of endpoints in the page to compare against would be handing out the ability to notify every one of your devices. Instead the page compares hashes: each registration exposes a one-way hash of its endpoint, the browser hashes its own, and the match is made without an endpoint ever appearing in a page.

Small thing. It is the kind of small thing that is very annoying to retrofit.

Using them together

The pairing that people actually settle into: turn on notifications for the project you are working in, trigger the flow from your application, get the notification, open the message, share the link. The staging setup is unchanged — your application still just points its SMTP client at the project's credentials, as in the quickstart.

Related articles

Keep reading

All articles

Read about it here, check it on your staging.

See it on your own mail

Point your staging SMTP at Mailclutch and every message comes back with its headers, its spam score and its authentication results — before a customer sees it.

Free plan · no credit card · running in under a minute