The issue is that the flow is treating a single object as an array. Since Get items already returns the records and Power Automate automatically creates an Apply to each to process them, you don't need additional Apply to each actions inside your Switch cases.
The error:
"The result is of type 'Object'. The result must be a valid array."
usually appears when an Apply to each is expecting an array but receives a single object instead.
I would also check the Switch action. If you're using a SharePoint Choice column for Status, make sure the Switch is evaluating the status text value rather than the entire Status object. For example:
items('Apply_to_each')?['Status']?['Value']
A simpler structure would be:
Get items
↓
Apply to each
↓
Switch (Status Value)
├─ Open → Send Email
├─ Ongoing → Send Email
└─ Extended → Send Email
Remove the extra Apply to each actions from the Open, Ongoing, and Extended cases and place the Send email action directly inside each case. That should resolve the error.
✅ If this helped solve your issue, please Accept as Solution so others can find it quickly.
❤️ If it didn’t fully solve it but was still useful, please click “Yes” on “Was this reply helpful?” or leave a Like :).
🏷️ For follow-ups @Sajeda_Sultana