1. In the Microsoft Power Automate, select My flows. Click on add "New Flow", select Automated cloud flow as the blank template to start.



2. Input Flow name and select "When an item is created" to be the trigger of the flow.




3. Select SharePoint Site Address and List Name. After that, click on New step.




4. To create an array to keep the email attachments, select Initialize variable.




5. Input variable Name and select Type as Array.




6. Next step is prepare to Get attachments from SharePoint.



7. Fill in the Site Address, List Name and use the ID from the trigger action, which would link to the item posted to the SharePoint.




8. Once the array is initialized, the next step is store the attachment contents in the array. So we start by adding a “Apply to each” control.





9.  Choose the “Body” output from the “Get Attachments”. 

10. Add “Get attachment content” action inside the loop. The SP site name and list name don’t change. 

  • For the ID field – select ID output from the “When an item is created” trigger.
  • For the file identifier field – Select the Id output from the “Get Attachments” action.




11. Continue in the last step, we add "Append to array variable" and set it up as shown below. 
     The code value for the email attachment array is:


{
  "Name"@{items('Build_attachment_array')?['DisplayName']},
  "ContentBytes": @{body('Get_attachment_content')['$content']}

}



12. Lastly we add in the Send an email (V2) action. Add the email content like the To, Subject and the email Body.




13. In Show advanced options, add the relevant emails and pipe in the AttachmentsArray output to the attachments input field.




14. After complete all the setup, we could save the automate flow and test it in your environment.