Oh Very Exciting! I actually just needed to build something similar. Below is what I just tested and it worked. I used what @IsmaelChivite suggested, but replaced HTTP with ArcGIS Get Attachments. If you need more of a "why", definitely use his page. Survey123 Tricks of the Trade: Working with attachments in Microsoft Power Automate
Here is just a quick overview, and I'll dive into each one. I'm not as fancy as Ismael with gifs.
Step 1: Set up your trigger. For us, that is "When a survey response is submitted". You should be able to do the drop down for your feature layer. If the drop down isn't working, I've found, going to Data -> Connections and then refresh your connection, works well. By default everything else is "Yes" and I don't change it.
Step 2: Create your array variable using "Initialize variable". Be specific in your Name especially if you ask multiple questions with file uploads as you will be referencing the name later. Leave "Value" blank. This step is needed because Survey123 file uploads can be single or multiple (If you're using Connect you'll want the appearance column = multiline to allow multiple attachments).
Step 3: Create your loop to get all your attachments. Even if you only have one file uploaded, I do not believe it changes this step any. Since this step has multiple parts, I'll break it into 3a, 3b, 3c, and 3d.
Step 3a: Create loop using "Apply to each". Use the dynamic content option to find your available features from the Survey123. Dynamic content has a search function that is awesome if you have a lot of file upload questions. You want feature attachments + name you gave the question. For me that is Upload_Structural which was located at the bottom of my list (second image).
Step 3b: Use ArcGIS "Get Attachment" to extract your file uploads. Use the dropdown to find your feature layer which should be the name of your Survey123. Your objectID is pretty standard. It is searchable in the dynamic content (feature result objectId). For Attachment, you'll want the feature attachments + name you gave the question + id, so for me that is feature attachments Upload_Structural id (3rd from the bottom using the picture above).
Step 3c: Add your attachments to your array using "Append to array variable". The Name drop down will be the name your provided on Step 2. For Value, Ismeal provided the below with the underlined section being unique the ArcGIS not HTTP
{
"ContentBytes": <Your ArcGIS Get Attachment: Attachment contents. Build using an Expression>,
"Name":<Your feature attachments name goes here. Get from Dynamic Content>
}
In the above image, body is the Get Attachment Attachment contents. If you named your ArcGIS Action something else, it will be "Action Name" in gray. The below image shows I only have one ArcGIS Action variable available (yellow). Make sure you do not delete the comma at the end of ContentBytes.
The Name is the file name provided by the Survey123 trigger (green). Using dynamic content, for me it was "feature attachments Upload_Structural name".
Step 3d: Add files to SharePoint using "Create File". Use the drop down for site address and folder path. You can use some of variables to make unique path. Be sure to add forward slashes "/" to create subfolders. For my file name and content, I used the same variables listed in Step 3c.
Step 4: Send email. We are an office 365 Agency so this is what I'm using. If you are too, be sure to click the button in the attachments section to make it "switch to input entire array". Add your array variable to the attachments section. I ask a question where I require their email so it sends the data to them.
Hope this helps! If you have multiple questions with file uploads you'll need to repeat Steps 2 and 3 per question. Good luck!