Hi everyone,
I'm facing an issue with a Power Automate flow using the trigger When an event is modified from the Outlook connector.
My objective is:
- Run the flow only when an Outlook calendar event is updated (not when it’s created).
- If the same event is updated again later, the flow should detect it and run only once per update.
- Avoid duplicate or repeated flow runs from a single modification.
Currently, after I update an event, the flow is triggered multiple times (looping every 1 minute) — for example: 14:06, 14:07, 14:08, 14:09 — even though the event wasn’t modified again after the first time.
I'm using this condition in my flow to detect updates only:
json
{
"type": "If",
"expression": {
"or": [
{
"not": {
"equals": [
"@triggerOutputs()?['body/start']",
"@triggerOutputs()?['body/originalStart']"
]
}
},
{
"not": {
"equals": [
"@triggerOutputs()?['body/end']",
"@triggerOutputs()?['body/originalEnd']"
]
}
},
{
"not": {
"equals": [
"@formatDateTime(triggerOutputs()?['body/start'], 'yyyy-MM-dd')",
"@formatDateTime(triggerOutputs()?['body/originalStart'], 'yyyy-MM-dd')"
]
}
},
{
"not": {
"equals": [
"@triggerOutputs()?['body/subject']",
"@triggerOutputs()?['body/originalSubject']"
]
}
},
{
"not": {
"equals": [
"@triggerOutputs()?['body/body/content']",
"@triggerOutputs()?['body/originalBody/content']"
]
}
},
{
"not": {
"equals": [
"@triggerOutputs()?['body/location/displayName']",
"@triggerOutputs()?['body/originalLocation/displayName']"
]
}
}
]
},
"actions": {},
"else": {
"actions": {
"Terminar_1": {
"type": "Terminate",
"inputs": {
"runStatus": "Succeeded"
}
}
}
}
}
Despite these efforts, the flow is still executing multiple times per update.
Has anyone encountered a similar situation? Any advice on how to ensure only true unique modifications trigger the flow once?
Thanks a lot!
— Marcio