I am not sure how i can share with you .
Here is the high-level flow
# 🚀 Power Automate Flow — Forms File Upload → Folder → File (FINAL WORKING)
## 📌 Overview
This flow:
- Triggers on Microsoft Forms submission
- Extracts uploaded file metadata
- Retrieves file content (OneDrive backend)
- Checks if folder exists
- Creates folder if not
- Uploads file into correct folder (no parent issue)
---
# 🔧 FULL FLOW (COPY AS-IS)
## 1. whenFormSubmitted
Type: Microsoft Forms Trigger
Action: When a new response is submitted
---
## 2. getResponseDetails
Type: Microsoft Forms → Get response details
- Form ID: same as trigger
- Response ID: dynamic
---
## 3. getFileUploadRaw
Type: Compose
Expression:
outputs('getResponseDetails')?['body/<your_file_question_id>']
---
## 4. parseFileJson
Type: Parse JSON
Content:
outputs('getFileUploadRaw')
Schema:
{
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"link": { "type": "string" },
"id": { "type": "string" }
}
}
}
---
## 5. getFolderName
Type: Compose
Expression:
trim(split(first(body('parseFileJson'))?['name'], '_')[0])
---
## 6. getFileName
Type: Compose
Expression:
first(body('parseFileJson'))?['name']
---
## 7. getFileId
Type: Compose
Expression:
first(body('parseFileJson'))?['id']
---
## 8. Get file content
Type: OneDrive for Business → Get file content
File Identifier:
outputs('getFileId')
---
# 📁 FOLDER HANDLING
## 9. checkFolderExists
Type: SharePoint → Get folder metadata using path
Site Address:
https://devtenan4-my.sharepoint.com/personal/info_v_com
Folder Path:
concat(
'/Documents/Apps/Microsoft Forms/Post-event feedback survey/Question/',
outputs('getFolderName')
)
Expected:
- 404 → folder NOT exists (this is OK)
- success → folder exists
---
## 10. Create new folder
Type: SharePoint → Create new folder
Site Address:
https://devtenant24-my.sharepoint.com/personal/info_vish_com
Library:
Documents
Folder Path (parent):
/Documents/Apps/Microsoft Forms/Post-event feedback survey/Question
Folder Name:
outputs('getFolderName')
Run After:
checkFolderExists → has failed
---
## 11. Delay
Type: Delay
Value:
PT30S
---
# 📄 FILE CREATION
## 12. Create file
Type: SharePoint → Create file
Site Address:
https://devtenant24-my.sharepoint.com/personal/info_v_com
Folder Path:
concat(
'/Documents/Apps/Microsoft Forms/Post-event feedback survey/Question/',
outputs('getFolderName')
)
File Name:
outputs('getFileName')
File Content:
SELECT → "File Content" from Get file content (dynamic)
⚠️ IMPORTANT:
- DO NOT use Body
- DO NOT pass file name as content
- MUST use dynamic "File Content"
---
# 🔁 FINAL FLOW ORDER
whenFormSubmitted
→ getResponseDetails
→ getFileUploadRaw
→ parseFileJson
→ getFolderName
→ getFileName
→ getFileId
→ Get file content
→ checkFolderExists (404 expected)
→ Create new folder (if needed)
→ Delay (30s)
→ Create file
---
# 🔥 CRITICAL RULES
✔ Always use "/Documents/..." in SharePoint
✔ Never use "/Apps/..." directly
✔ Folder Path must include folder name
✔ File Content must be binary (dynamic output)
✔ 404 in checkFolderExists = expected behavior
---
# ✅ FINAL RESULT
- Folder auto-created per submission
- File uploaded inside correct folder
- No parent folder issue
- No empty file issue
- Fully stable flow 🚀
Vishnu WR
Please ✅ Does this answer your question if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider answering Yes to Was this reply helpful? or give it a Like ♥