List-Unsubscribe/List-Unsubscribe-Post headers for transactional emails?

Hello,

My team and I have been working on implementing some regularly scheduled emails for our clients using hubspot’s transactional email API + the beta custom coded template/module features.

These emails are really more like marketing emails, but to leverage hubspot’s single send API features we’ve been implementing them as transactional emails (there’s a lot of bespoke data that needs to be pulled into the emails per-client in our backend, and which we don’t want to store on HubSpot). Overall our desired implementation has gone well and the emails are almost ready to ship.

To get to the point, we’ve included unsubscribe links in the email footer which leverage our own unsubscribe solution, since these are going to act more like marketing emails. But as a final step we want to figure out how to implement List-Unsubscribe-Post and List-Unsubscribe headers in these emails, to comply with recently announced requirements from Google and Yahoo. So my question is, is modifying email headers (in general, and these ones specifically) supported with the transactional email / single-send API, and if so, can anyone give me direction about how to implement them (either in the email template itself or the API request we’re making to the single send API)? I’m having difficulty finding docs that describe how to implement this with the given API, have tried a number of ideas just to see whether something would work but nothing has worked out. Would appreciate any direction anyone can offer here. :folded_hands:

Thank you.
Edit: to make this a bit clearer, we’re sending an unsubscribe url which points to a domain of ours in the custom properties of our api request, and then including that in an unsubscribe hyperlink in the footer; such that when the user hits that endpoint it triggers unsubscribe logic on our side. We want to also include this in a header. This is important to us because we want our clients to be able to manage their subscription status both in-platform (ours) and through clicking the unsubscribe link, hence the custom solution here.

Hi @NBahet! Welcome to the Community-- happy to have you here :blush:

This is a great question. This is a tricky issue since Marketing emails and Transactional emails are truly designed to do different things. For example, when the email subscription type is set to Transactional, we will scrub the unsubscribe tokens to remove them by default. So even adding them into the header manually, I am not aware of a way around this (Knowledge Base article).

That said, maybe some of our experts have other experiences they can share! Hey @Ben_M, @karstenkoehler, @Phil_Vallender -- do any of you know of a way to implement List-Unsubscribe-Post and List-Unsubscribe headers in transactional emails? Thanks!

Best,
Kennedy

Hello @kennedyp ,

Thank you for the warm welcome and for clarifying your understanding here! Since it’s looking like this is not currently supported, we’re wondering whether the HubSpot team would consider implementing support for these headers. From skimming around the web it looks like a number of email services are adding manual support here, including for teams with their own unsubscribe solutions: here’s an example from Postmark showing what looks like a relatively straightforward manual implementation (the two headers and their values getting sent inside a “Headers” list with the API request). Is this something Hubspot could implement for its Single Send API?

At your convenience, please let me know if there’s anything I should do to formally submit a feature request here. Thank you for your support with this!

That is a great idea of HubSpot to consider! Thanks for sharing those details @NBahet.

I encourage you to consider creating a post on our Ideas Forum here. If you find a similar idea, give it an upvote and share your unique use case in the comments. Share your Ideas post link here so I can upvote it as well!

Thank you @kennedyp! -- I appreciate your support here. I’ve posted the idea/feature request here.