Power Automate: Save all attachments when an email arrives

One of the best ways to deal with email is not to deal with it at all. With Power Automate, you can check each email that arrives, and it fits a certain condition and automatically performs a specific action. Today I’ll explain how to save all attachments automatically when an email arrives.

Note: This post was inspired in finding a solution for the Power Automate Community because the obvious way of doing this will result in an error

The obvious way and why it won’t work

If you’re building this Flow, you would think you would only need 3 steps:

  1. When a new email arrives
  2. Apply to Each Attachment
  3. Save file.
  4. (Optional) move or archive the email

Since the trigger contains the attachments, you would build something like this.

But this will save invalid files of 4bytes each. The attachment object only returns the ID of the attachment, not the attachment itself.

I don’t know if this is intended, but it made me spend some time figuring out why the Flow was not working when the logic is 100% correct.

The solution

The solution is simple. You need to fetch the email by the ID you receive in the trigger, and then you’ll have the attachment object that you would expect.

If you do this, then all files will be saved correctly.

Final thoughts

The issue is quite a head-scratcher, but fortunately, it has a simple solution.

In the end, you can move the email using the “Move Email” action. With this, you will have one less email to process and avoid the tedious work to save all attachments from an email and archiving them.

This is the kind of automation we like. The one that does 100% of the work for us.

Have a suggestion of your own or disagree with something I said? Leave a comment or interact on Twitter and be sure to check out other Power Automate-related articles here.

Photo by Anne Nygård on Unsplash

Manuel Gomes

I'm a Project Manager with experience in large projects and companies. I've worked in the past for companies like Bayer, Sybase (now SAP) and I'm currently working for Pestana Hotel Group.

View all posts by Manuel Gomes →

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: