knowledgecenter-breadcrum

Knowledge Center

25 Jun, 2020

How to upload a file to Azure Blob Storage using MS Flow?

Posted on 25 Jun, 2020 by Admin, Posted in Power Automate

How to upload a file to Azure Blob Storage using MS Flow? Blogs

How to upload a file to Azure Blob Storage using MS Flow?

Introduction

In this blog I have explained how to upload any file to Azure Blob Storage using Microsoft Power Automate (Flow).

Solution

We will use Base64 string as file content. To trigger this flow, I have created HTTP POST request so that, we can call it in any programming language. You can use any other trigger as per your requirement.

Step by Step

  1. Go to https://flow.microsoft.com and login with your credentials.
  2. Click on My Flows > New > Instant–from Blank.
  3. If you are shown list of triggers, click on Skip.
  4. Search “HTTP request” in search box and select “When an HTTP request is received”
  5. Then write a JSON object which will contain 3 variables for path, file name and file content. Here path is the “container” of the Azure Blob Storage.
  6. Upload to ABS
  7. In flow you will find lot of azure blob storage action. Here we are uploading a file to azure blob storage, then you must add next step as a “Create blob” action.
  8.  
  9. But to add this action you need to create a connection with “Azure Blob Storage” by providing necessary credentials.
  10. SAS URI to access file from Azure Blob Storage using MS Flow
  11. Set “Folder path” and “Blob name” fields as below.
  12. Here is the main issue. We cannot pass base64 string directly to “Blob content” field as content. This field required binary datatype value. So, we must convert base64 string to binary. Here MS Flow provide us a function to convert base64 string to binary without any code. To use it, follow below steps.
  13. Add opening and closing brackets after expression then you will a notification text to inform you about variable to pass this expression.
  14. Click on “Dynamic content” tab and select appropriate variable.
  15. You will see final expression as “base64ToBinary(triggerBody()?[‘blobcontent’])”
  16. Click on “OK”.
  17. You will see “Blob Content” field is now populated.
  18. Upload to ABS
  19. Now you must add new step to send response. To do that, click on new step, search for “Request”, click on “Request” and select “Response” action.
  20. SAS URI to access file from Azure Blob Storage using MS Flow
  21. In response action, in Body filed select “path” variable which is an output variable of “Create Blob” step. Please search for “Path” in dynamic content if you don’t see path variable directly.
  22. Upload to ABS
  23. Here path is the link location of the file uploaded on Azure Blob Storage.
  24. In addition, when you are updating the same file with different file content, then you must use “Update Blob” action which take file location link start from container as path and file content.
  25. Example for the path : if file location is this ”https://azureblob.windows.net/xyz/files/filename.png“ then path is like this “xyz/files/filename.png”.
  26. Upload to ABS

Comment

This is a Required Field

Loading

Recent Updates

Email Storage Made Easy: Dynamics 365 Space Saving Tips
Blogs
29 Feb, 2024

Email Storage Made Easy: Dynamics 365 Storage Saving Tips

Email Storage Made Easy: Dynamics 365 Storage Saving Tips Introduction Microsoft's latest feature allows you to migrate email descriptions from CRM…

READ MORE
Blogs
28 Feb, 2024

How to enable the enhanced email template editor in Dynamics 365?

How to enable the enhanced email template editor in Dynamics 365? To activate the Enhanced Email Template editor for your…

READ MORE
RCA for ARC Migration Issue
Blogs
28 Feb, 2024

Troubleshooting Convert Rules Import Issue: Entity 'workflow' with ID Does Not Exist error in D365

Troubleshooting Convert Rules Import Issue: Entity 'workflow' with ID Does Not Exist error in D365 Problem Statement We implemented D365 Customer…

READ MORE