web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / sequential approval sk...
Power Automate
Suggested Answer

sequential approval skips condition loop.

(0) ShareShare
ReportReport
Posted on by 4
 Hello, ive been trying to crack my head with the sequential approval problem, ive been trying to let it submit emails once its approved but every time i run the loop, it skips the condition part. 
As far as i understand, the blank columns need a value and the left is the outcome via dynamic expression while the right one is "Approve" since the flow needs to detect that word.
 
Need help, it skips condition.
Categories:
I have the same question (0)
  • Suggested answer
    MParikh Profile Picture
    521 Super User 2026 Season 1 on at

    This behavior is expected and the condition is not failing, it is evaluating before the approval action completes.

    In sequential approvals, Start and wait for an approval already blocks the flow until the responder acts. When you place a Condition immediately after it, Power Automate does not re-evaluate the approval outcome inside a loop unless you explicitly reference the correct output and timing.

    Why your condition is being skipped

    1. Start and wait for an approval returns Outcome, not body/outcome.
    2. The value is case-sensitive and returns Approve or Reject.
    3. In loops, conditions often evaluate against an empty value when the dynamic token is not bound correctly.
    4. The UI comparison you used silently resolves to false, so the condition path is skipped.
    This is why you see no error, only skipped logic.

    Correct way to evaluate approval outcome
    Do not rely on the UI comparison.
    Use an expression instead.
    In the Condition, switch to Expression and use:
    equals(outputs('Start_and_wait_for_an_approval')?['body/outcome'],'Approve')

    Replace Start_and_wait_for_an_approval with your exact action name.
    This guarantees:
    • Correct timing
    • Correct value
    • Correct scope inside loops
    Recommended pattern for sequential approvals
    Best practice is to avoid extra conditions entirely.
    Structure like this:
    • Start and wait for an approval
    • Configure Run after
      • Success → Approved path
      • Failed / Timed out → Rejected path
    Or, if branching is required:
    • Initialize a variable ApprovalResult
    • Set variable to Outcome
    • Evaluate the variable in later conditions

    This avoids skipped conditions and improves readability.
    Quick validation tip
    Add a Compose action right after approval and output:

    outputs('Start_and_wait_for_an_approval')?['body/outcome']


    Run once. You will see the exact string returned. Match it exactly.
     

    Thank you! 
    Proud to be a Super User!
    📩 Need more help?
    ✔️ Don’t forget to Accept as Solution if this guidance worked for you.
    💛 Your Like motivates me to keep helping
  • Kalathiya Profile Picture
    2,456 Super User 2026 Season 1 on at
    Hello @LJ-10020157-0
     
    This usually happens because the condition is checking the wrong output. 

    In the condition, make sure the left side is the Outcome from the approval action (or use the expression outputs('Start_and_wait_for_an_approval')?['body/outcome']) and compare it to Approve (case-sensitive).

    Expression:

    outputs('Start_and_wait_for_an_approval')?['body/outcome']
     

    Hope this helps 😊

     
    If this response resolves your issue, please mark it as the Verified Answer so it can help other community members as well.
    ---------------------------------------------------------------------------------
     
    📩 Need more help? Mention @Kalathiya anytime!
    ✔️ Don’t forget to Accept as Solution if this guidance worked for you.
    💛 Your Like motivates me to keep helping!
  • LJ-10020157-0 Profile Picture
    4 on at
    @Kalathiya i did the way you advised but it seems its the same, i did edit mine to be outputs('Start_and_wait_for_an_approval_1')?['body/outcome'] would the problem be in the 'apply to each' block?
    outputs('Start_and_wait_for_an_approval')?['body/outcome']
  • LJ-10020157-0 Profile Picture
    4 on at
    after checking your solutions i've come to realize its either the lacking of power automate or the over analyzing of your expertise.

    Solution was extremely simple:
     
    body/outcome -> is equal to -> Approve, Approve

    since the final result is like that i suppose i try it like that too.
     
    it works :)! thanks for helping i have deeper understanding of how this app works now

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Season of Sharing Community Challenge Launch!

Jump in, show your community spirit, and win prizes!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Congratulations to the May Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Automate

#1
Valantis Profile Picture

Valantis 377

#2
11manish Profile Picture

11manish 279

#3
David_MA Profile Picture

David_MA 234 Super User 2026 Season 1

Last 30 days Overall leaderboard