So I've run through about 10 different iterations of condition code to test for whether or not the time an email was received based on metadata (or even the current time when an email was received) and I cannot get the condition to work properly for the life of me. I was able to build a flow on my account using the code below and the condition functioned - however, when I moved the flow over to the shared mailbox, the flow terminates with my status of "canceled" and an indication that the condition failed. Below are my requirements for this condition, everything else is set up correctly as far as I know, but I can share whatever is requested.
- Trigger: email arrives in shared mailbox
- Condition: check for time the email arrives, make sure it is between 6:30 AM and 5:30 PM local time
- If yes, terminate the flow (do nothing)
- If no, check if the message is a reply (currently using "RE: " in subject)
- If it's a reply, do not send a message (do nothing)
- If it's a unique message, send an after-hours message from the shared mailbox
I don't get failure, just information that every single message fails the condition and the flow terminates.
@and(
less(
formatDateTime(
addHours(
triggerBody()?['DateTimeReceived'],-6
),
'HH:mm'
),
formatDateTime('06:30:00','HH:mm')
),
greater(
formatDateTime(
addHours(
triggerBody()?['DateTimeReceived'],-6
),
'HH:mm'
),
formatDateTime('17:30:00','HH:mm')
)
)I'm also including a screenshot of the general setup I have below in case that's helpful.

Any help getting this to function is appreciated. I've looked through these forums as well as tried a bit of Google-fu and that's how I cobbled my code together, but it just doesn't seem to work. Thanks in advance!