Posting to Teams with Microsoft Flow: Incoming Webhook verses Teams – Post Message

The more I explore Office 365, and it’s options on integration, the more I love it. I’ve been very focused on using Flow for my integration stories, which, for the most part, works just as expected.

I came across this article which has re-introduced to me the idea of using web hooks to post to Teams. Starting Microsoft Teams conversation on items from SharePoint list. In this article, instead of using the Teams Post message action, the writer decided to use an Incoming Webhook. I instantly remembered this option was here and thought, huh, what’s the difference with what I’ve been doing?

My examples here come from my existing Flow I created earlier.

What is the Incoming Webhook?

Basically, it’s a URL provided by Teams for any service to use to post content with the goal of sharing that content in your team’s channel.

When you configure it, you get a URL which you can then post a JSON request to. (JSON is a long formatted string that helps standardize data.)

The final output, or the post in Teams, is a pretty card, similar to:

Flow pushing content to Teams via Incoming WebhookThe Flow action looks like this:

Microsoft Flow action for HTTP Post to Teams Incoming Webhook

You can enable an Incoming Webhook by going to the connectors for the channel. If you want more detail, let me know and I can write up a walk through.

What is Microsoft Teams – Post message action in Flow?

This is a specific action in Flow for writing to your team’s channel. This is a wee bit more basic and will suffice for most business users. When you use this action, all you get is a single open field, in which you can put content and HTML to make your post look a little prettier:

Flow post a message to teamsAnd it’s Flow action looks like this:

Microsoft flow post a message to teams

What I like about the Incoming Webhook

The incoming webhook might be my new favorite way to post to Teams:

  1. Standardized format, looks more “professional”, more authoritative in my feed.
  2. Formatting supports Markdown or HTML.
  3. It uses a “service account”, instead of the name of the person who created the Flow.
  4. Can have additional actions taken on the message card (another blog post coming soon).

But beware

  1. It’s more work, formatting the JSON can be tricky. But I think in the long run worth it.

What I like about Teams Post message in Flow

This still may fit in some basic flows:

  1. It’s quick and dirty, get’s the data in there

But beware

  1. Everything gets posted under your account, or the account of the person creating the Flow.

Which one should you use?

As always, it depends on your need. If you simply want to quickly post an update, use the Teams Post message action. If you want it cooler looking, functional, use the Incoming Webhook.


Some nice resources from Microsoft and the community on understanding the incoming webhooks more!


What do you think? Which method will you try next?


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at

Up ↑

%d bloggers like this: