Skip to main content

Notifications

Community site session details

Community site session details

Session Id :
Power Automate - Using Flows
Answered

what after "When a http request is received" multipart/form-data

(0) ShareShare
ReportReport
Posted on by 30

Good Day everyone,
I m building a react form with multiple files input field and some other basic fields (FirstName, LastName, Email,....). I could Post this data when the form is submitted as multipart/form-data to "When a http request is received" trigger, but not sure how to handle the output so it can be readable and send it via email and attach the files to the email too.
Any help would be appreciated!
Thanks in Advance!

  • Expiscornovus Profile Picture
    31,641 Most Valuable Professional on at
    Re: what after "When a http request is received" multipart/form-data

    Hi @MartinaRizk,

     

    Thanks for sharing and great to see you figured it out 🙂

  • Verified answer
    MartinaRizk Profile Picture
    30 on at
    Re: what after "When a http request is received" multipart/form-data

    Hello Everyone,
    for the future viewers, I could find the solution for my scenario. so here it is:
    I m creating a react form where the user will submit it with attached files - I don't know how many files - and need to upload these files to OneDrive and have them attached to email that'll be sent to the submitter, so in react:

     

    const formdata = new FormData(event.target);
    formdata.set('files', uploadedFiles.length); // numbers of files
    
    uploadedFiles.forEach((file, index) => { // uploadedFiles comes from a function that handels the input type="file"
     formdata.append('filename_'+index, file.name);
     formdata.append('file_'+index, file);
    });
    axios({
     method: "post",
     url: the-post-link-you-get-from-when a HTTP Request is Received-flow,
     data: formdata,
     headers: { "Content-Type": "multipart/form-data" },
    })
     .then(function (response) { //handle success
     console.log("New Post has been sent to Power Automate!");
     })
     .catch(function (response) { //handle error
     console.log('error: '+response);
     });

     

     

    and in Power automate:

    note: what's surrounded with red line, is just to show the expression.

    MartinaRizk_2-1666020379388.png

    next add Do Until flow:

    count = variable('count')

    Outputs = Outputs('Compose_-_Total_Files')

    MartinaRizk_3-1666020512701.png

    and here are the flows inside Do Until:

    MartinaRizk_4-1666020961765.png

    this is how the array should look like to set to the attachment field in send email flow later.

    { "Name": triggerFormDataValue(Outputs('Compose_-_filename_x')),

      "ContentBytes": triggerFormDataValue(Outputs('Compose_-_file_x')) }

    MartinaRizk_5-1666021717087.png

    File Name: triggerFormDataValue(Outputs('Compose_-_filename_x'))

    File Content: triggerFormDataValue(Outputs('Compose_-_file_x'))

    MartinaRizk_1-1666023167676.png

    then outside the Do until add Send an Email (V2), and expand the Show Advanced Options, and in the attachment set the array of the files that we created before (you need to switch the button beside the attachment from text to this one): 

    MartinaRizk_0-1666022982868.png

     

     

     

     

     

  • MartinaRizk Profile Picture
    30 on at
    Re: what after "When a http request is received" multipart/form-data

    Hi @Expiscornovus ,

    I've tried these functions you suggested with a compose flow with inputs (trigger()?['first-name'], triggerBody()?['first-name'], triggerOutputs()?['first-name']) but their outputs was empty, just triggerFormDataValue('first-name') that works for me!

  • Expiscornovus Profile Picture
    31,641 Most Valuable Professional on at
    Re: what after "When a http request is received" multipart/form-data

    Hi @MartinaRizk,

     

    That is an interesting scenario. What do you see when you use either the trigger, triggerBody or triggerOutputs function instead?

  • MartinaRizk Profile Picture
    30 on at
    Re: what after "When a http request is received" multipart/form-data

    I used triggerFormDataValue('file_0') from the second link, and it works fine for me. but now my problem that the user can attach many files which I need to loop through them and attach them to the email. how I can dynamically do that?!
    note: I can send the how many files I have for this submission on the post request, so the data would be something like that

    [

      "files": 2,  // total number of attached files

      "filename_0": file_name,

      "file_0": file_content,

      "filename_1": file_name,

      "file_1": file_content

    ]

  • MartinaRizk Profile Picture
    30 on at
    Re: what after "When a http request is received" multipart/form-data

    Thanks so much @Expiscornovus for your reply and the sources you shared are amazing. im gonna try them out!

     

  • Expiscornovus Profile Picture
    31,641 Most Valuable Professional on at
    Re: what after "When a http request is received" multipart/form-data

    Hi @MartinaRizk,

     

    I would suggest to have a look at the triggerMultipartBody and triggerFormDataValue functions. Those might be useful to handle the output of your trigger action.

     

    Below are a couple of links with examples

    https://powerusers.microsoft.com/t5/Building-Flows/Working-with-multipart-form-data-from-HTTP-trigger/td-p/594051

    https://siddiquemahsud.blogspot.com/2022/06/upload-file-to-sharepoint-document.html

     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

🌸 Community Spring Festival 2025 Challenge 🌸

WIN Power Platform Community Conference 2025 tickets!

Markus Franz – Community Spotlight

We are honored to recognize Markus Franz as our April 2025 Community…

Kudos to the March Top 10 Community Stars!

Thanks for all your good work in the Community!

Leaderboard

#1
WarrenBelz Profile Picture

WarrenBelz 146,653 Most Valuable Professional

#2
RandyHayes Profile Picture

RandyHayes 76,287 Super User 2024 Season 1

#3
Pstork1 Profile Picture

Pstork1 65,999 Most Valuable Professional

Leaderboard

Featured topics

Restore a deleted flow