In the past I used SharePoint Designer Workflows and I’ve always struggled with the reliability of SharePoint Designer. Now that Flow is the new cool toy to play with I thought I’ll put it to the test.

During this series I’m going through my conclusions as I try to get to developing reliable Flows.

Posts in this series:

Part 1 – Twitter feeds turned into emails

Part 2 – SharePoint lists alerts with Flow

Part 3 – Reliable Flows

Part 4 – Error Handling


So I setup a flow that sends an email every time someone sends a tweet with the office 365 hash tag. So if you got to this post via twitter using the #Office365  then please retweet the post.


How reliable is Microsoft Flow? Microsoft Office 365 retweet

I would have liked to include a link to the tweet but that doesn’t seem to be available yet:

How reliable is Microsoft Flow? Microsoft Office 365 fields

It is however possible to get the link to the tweet included in the email using{username}/status/{tweetid} . Thanks  to Josh for his comment below.

Once I saved my tweet the emails started to come in, but quite quickly I noticed the failed flow notification:

How reliable is Microsoft Flow? Microsoft Office 365 failedflow

Clicking on the details I got to the following error message:

How reliable is Microsoft Flow? Microsoft Office 365 failuredetails

And even though I looked at the notification the red notification alert didn’t disappear.

Then when I looked at the run history, It noticed that I didn’t get much success with my flow:

How reliable is Microsoft Flow? Microsoft Office 365 runhistory

So, so far my conclusion is that Flow isn’t great in handling high volumes, but I was wrong.  Looking a bit further at the error details:

How reliable is Microsoft Flow? Microsoft Office 365 errordetailmessage

The email is failing when fields are empty. So I guess some of the tweets don’t have an image attached and therefore including them in the email body is causing problems.

So now I’m updating my Flow a bit and I’m removing the MediaURLs, but this doesn’t make a difference. Ok, so a bit more of a detailed look at the error message

There are 2 clues in the message:

  • Apply_to_each
  • OriginalTweet and MediaUrls

So it is the apply to each that requires these fields to be set. Unless I’m wrong, it looks like the  Apply to each step in  Microsoft Flow needs these fields to be set.

I’m still investigating, but it looks like I’m hitting a bug here.

So I decided to create the same Flow in Azure Logic apps.

How reliable is Microsoft Flow? Microsoft Office 365 logicapps

Then I waited for some email alert to come through and I got my first alerts coming through quite quickly and also some failures:

How reliable is Microsoft Flow? Microsoft Office 365 sameerror

Ok, the same error message appears here. I would have been quite surprised if it had worked in Azure Logic apps as Logic apps and Flow are very much the same. But there is one big difference and that is code view.

And this is where I can find the problem:

How reliable is Microsoft Flow? Microsoft Office 365 foreach

Time to play around with the json in the code view? No it isn’t I suddenly realised what is happening. I’m running the Flow and Logic app quite frequently and every now and then there simply aren’t any Office 365 tweets. So I’ll run my Flow every 5 or 10 minutes and see if the success factor goes up, but I’m still getting many failures to come through.

Having let this run for a while, I’m still getting many failed flows :

How reliable is Microsoft Flow? Microsoft Office 365 runhistory2

Comparing this with the matching Logic Job in Azure:

How reliable is Microsoft Flow? Microsoft Office 365 runhistoryazure

It looks like the reporting might not be able to keep up unless of course I do have many jobs running? Please feel free to leave a comment below or continue to read the rest of this series.

Interested in more? Office 365 – Microsoft Flow – How reliable is Microsoft Flow – Part 2

Avatar for Pieter Veenstra

By Pieter Veenstra

Business Applications and Office Apps & Services Microsoft MVP working as a Microsoft Productivity Principal Consultant at HybrIT Services. You can contact me using

12 thoughts on “How reliable is Microsoft Flow?”
  1. As far as a link to the tweet, it’s pretty simple to just concatenation a string with the following fields:{username}/status/{tweetid}

    In fact, it doesn’t really matter what you put in the spot for username, since it only really cares about the ID.

  2. Hi Peter,
    Just to clarify, this is only an issue when using the Media URL field, true? (Because that causes the Apply to Each to automatically be added to the Flow, and in many cases a Tweet doesn’t have a Media URL – your Null cases.)

    1. Hi Sandy, this actually happens every time the trigger returns no tweets. So when the array of tweets is empty the for each doesn’t run without failures. The workaround is described in part 3 of this series.

      1. That’s interesting. That trigger shouldn’t even fire (ie it should show in the Run History as a “Check with no new data”) if there are no tweets at all with that hashtag.

      2. This is untrue. The trigger is time based, but it will not invoke your flow if there are no tweets. The issue is almost certainly to do with tweets not having media attachments.

      3. Hi Josh, I am quite sure that I tried adjusting the json and replaced the mediaurl with another field . And I still got the same error messages. I will verify this tomorrow and get back to you.

Leave a Reply

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