Site icon David Lozzi

Sending a beautifully formatted email from Power Automate (Flow)

Advertisements

updated March 10, 2020

I recently shared a winning use case for Office 365. Within this use case, I am using a flow in Power Automate to send beautifully formatted emails to our users. Something like:

Okay, maybe it’s not that beautiful, but it is colorful, has an image, and pops in comparison to black and white text only emails.

Using the Rich Text Editor in the Email Action

The Send Email actions include a rich text editor already, allows you to bold text, add some color, and format the email much like you can in Outlook.

That may suffice for your needs, but sometimes we need to send a fully formatted email, like my example above. That example wouldn’t be possible using the rich text editor approach. So let’s work around it and get this beautiful email sent!

Check out Outlook’s other sending email options here.

Power Automate sends formatted emails with ease

Inside the rich text editor, note the </> button. That button allows you to create exactly the email you want. Any HTML you want to put in there you can.

As long as you know HTML, you can send beautiful emails. DONE!

What if I don’t know HTML?

I know HTML but I didn’t want to write the HTML for this email. Call me lazy, or too busy, or just intuitive :D. Instead, here’s what I did, and what I suggest to you.

Create a new email in Outlook.

Style the email: add colors, content placeholders, images, tables, etc. For content placeholders, put something obvious like %%FULLNAME%%, %%LINK TO SOMETHING%%, %%MESSAGE%%, etc. Whatever data you expect the Flow to load for you. Something to make the text pop out to your eyes later on.

Email yourself the email.

Open the email you just sent to yourself in Outlook. Open it in a new window, not in the preview pane in your Inbox. Go to Message tab, then More Move Actions > Other Actions > View Source. It’s kind of hidden:

Don’t be scared! If you don’t know HTML, the resulting action of clicking above might have your eyes hurting. That’s OK!

You should see something like this:

Look for your content placeholders, I see mine, %%FULL NAME%%, right about halfway down. What’s all that other stuff on the page? HTML! Don’t worry about it.

NOTE make sure to start with <html and end with </html>. You may get other message header details in there, ignore that, just copy what’s between <html... </html>

Click the </> button in the rich text editor and paste in this content.

Now replace your content placeholders with dynamic values from Flow!

That’s it

Images are tricky

A quick note on images. Outlook takes the image you included in your email and converts it to a string, to plain text. I found copy/pasting this didn’t work in Flow. I think the text ends up being too long in this action and it breaks.

Instead, what you should do is upload the image to the cloud. I used our marketing system Pardot, but you could upload it to a Google Drive, OneDrive for Business, a blog site, anywhere. Get the anonymous visitor URL to the image itself, and swap that out for the image.

Look for <image src=”ab2md3m… in the HTML and change the value of the src property to the URL of the image. Your src should look like <image src=”https://url/to/your/image.png&#8221; />.

Check out this YouTube video for using an image from a SharePoint library: https://www.youtube.com/watch?v=sZjZyBVhPIc.

That’s it!

I hope this little trick works for you. Alternatively, you could find a WYSIWYG editor somewhere and format your email and then copy/paste that HTML as well. I find, that since the email was made in Outlook, its source is very Outlook friendly.

Exit mobile version