Within my Office 365 environment I’ve got quite a few options when I want to develop workflows. The two options that I’m looking at in this post are Microsoft Flow and Azure Logic Apps.

Both interfaces are quite similar. Looking at the trigger “When an item is created in SharePoint”, the options are quite similar:

But there are differences. Within Azure Logic apps you will have to set a frequency at which a list is polled for new items, where the Microsoft Flow option seems to handle things immediately.

This is exactly where we can see one of the big differences between Flow. First I thought that Flow simply sits closer to SharePoint than the Logic Apps in Azure but that is not the reason. As I checked out the twitter trigger, I’m finding the same result:

So it simply means that Flow is working like event receivers did in SharePoint and Azure Logic Apps behave more like timer jobs.

But there are more differences. When looking at the options available within the triggers. Azure Logic apps offer the option to look at the code behind the trigger.

This options makes a big difference. Where Microsoft Flow seems to be a bit more comparable to SharePoint Designer Workflows where the Azure option of logic apps offers both the designer and code view. With the code of a simple workflow looking something like this:

"$connections": {
"value": {
"sharepointonline": {
"connectionId": "/subscriptions/44d9f6bf-5efe-4660-b55a-767b5037fbe0/resourceGroups/LogicApps/providers/Microsoft.Web/connections/sharepointonline",
"connectionName": "sharepointonline",
"id": "/subscriptions/44d9f6bf-5efe-4660-b55a-767b5037fbe0/providers/Microsoft.Web/locations/northcentralus/managedApis/sharepointonline"
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {},
"contentVersion": "",
"outputs": {},
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
"triggers": {
"When_an_item_is_created": {
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['sharepointonline']['connectionId']"
"method": "get",
"path": "/datasets//tables/@{encodeURIComponent(encodeURIComponent('a4a33536-147f-4b70-bc6b-cb93652bd876'))}/onnewitems"
"recurrence": {
"frequency": "Minute",
"interval": 3
"splitOn": "@triggerBody()?['value']",
"type": "ApiConnection"