
I am working on a large approval workflow that needs to publish documents after a meeting has been held. This can take 2 months from an initial approval stage to when a meeting is scheduled. Since Power Automate flows have a 28 day flow run limit, I need to now breakup a workflow that I already have built and works fine if the meeting happens within the 28 day limit. This longer time is a new requirement from something we have been for 3 years.
Since I need a child flow to be triggered that will schedule the meeting and then watch the invite for any rescheduling, I can't use the users credentials anymore in the triggering workflow to create and track the meeting in their calendar. My thought is to create a Service Account with a Mailbox that all meetings will be scheduled with and the invite sent to the required parties for the meeting. I am using Find Time to get availability and then Teams to schedule the meeting. I then have a loop that checks to see if the meeting time has passed. However, now that the invite is coming from the service account instead of the users provided credentials, I need a way to automatically accept meeting time changes if the attendees need to move the meeting. I tried turning the service account into a resource mailbox with automatic approvals enabled. However, this didn't accept meeting time changes since the service account is the organizer. I then tried changing it back to a user mailbox and then creating a workflow to watch the invites and automatically accept them but now I get the following error message in the workflow:
"Your request can't be completed. You can't respond to this meeting because you're the meeting organizer."
Any ideas on how I could make this work So I can track the meetings in one account?
I figured out a way to do this leveraging the GraphAPI directly and an application password\secret. I then gave that App Rights to Read.Write to all calendars.