Top
Photo by Levi Meir Clancy on Unsplash

Timeouts in Actionable Messages


This post was inspired by a message that Sergi Dominquez sent me on Twitter. It turns out, that when a request from Actionable Message in Outlook is sent to a server, Outlook waits only a specific amount of time for the response.

The timeouts are described in no official documentation. The only reason Sergi found out that is actually a case was an answer under his question posted on GitHub. Muthurathinam from Microsoft answered, that there are timeouts indeed:

  • Http Action – 15 seconds
  • Auto-invoke Http Action – 6 seconds (although in my tests request terminated waiting after even 4 seconds)

Http Action

That action is used in Actionable Messages to allow users to send data from the card, to the server. This action is invoked by a user, when they click on a button. Like in the example below:

The action can execute either POST or GET request.

More about the action can be found in docs here: Design actionable message cards using Adaptive Card format – Outlook Developer | Microsoft Docs.

Auto-invoke Http Action

This action is not so commonly known. Its purpose is to allow some action to be triggered when a card is being displayed. For example, to refresh the card with the latest approval data. It can be added to Actionable Message code as a separate property (just like you would add an action – remember about headers):

This action is supporting POST requests.

More about its usage you can find in docs here: Refresh an actionable message on open – Outlook Developer | Microsoft Docs.

Timeouts in Actionable Messages

So I have made my tests. Unfortunately, Muthurathinam was right. I added “Delay” in the cloud flow to stop it from sending response immediately. Then I sent myself Actionable Message, that had both Auto-invoke request and regular Http Action.

For the Auto-invoke, request was stopping to wait after only 4 seconds:

However, it was not canceled or anything like that. On the other hand, in this scenario listener was actually terminated and cloud flow was unable to send any data back to requestor:

In case of Http Action, network trace shows that Outlook was indeed waiting for 15 seconds before it canceled the request:

However in this case, which is odd, the cloud flow that was delayed, after delay was over was still able to send back response to the requester, however it was never processed nor the card was updated. Instead, after 15 seconds an error message was displayed:

Summary

There is just one final word I’d like to share here. Be sure, that the logic behind actions in your Actionable Messages is really executed fast. No-one likes to wait long, after they invoked any kind of action. The cards don’t like that either. Good luck!


Tomasz Poszytek

Hi, I am Tomasz. I am expert in the field of process automation and business solutions' building using Power Platform. I am Microsoft MVP and Nintex vTE.

1 Comment
  • Martin Mostögl

    Hi Tomasz, thanks for the very helpful article. Have you ever realized, that AutoInoke, causes wrong value response in Outlook Web Client. With AutoInvoke, my values of text fields are not handed over corretly, instead it hands over the syntax itself, like {{comment.value}} and not the real value of the comment Input.Text field.

    June 3, 2022 at 10:57 am Reply

Post a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.