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

Blogs
18 Jul, 2024

How to use Fiddler to debug your PCF while doing development.

Have you ever felt like you're spending too much time debugging your PCF (PowerApps Component Framework) during development, only to…

READ MORE
Blogs
16 Jul, 2024

How to use Solutions with Power Pages

What is Solution in power Pages? A solution is a container for components such as Website Configuration and Dataverse Components.…

READ MORE
Blogs
15 Jul, 2024

Create a Dataverse table with a SharePoint List

In today’s business world, Organization uses SharePoint lists for document management, and data storage. Let's assume a scenario where an organization…

READ MORE