Microsoft.Logic workflows template reference

Template format

To create a Microsoft.Logic/workflows resource, add the following JSON to the resources section of your template.

{
  "name": "string",
  "type": "Microsoft.Logic/workflows",
  "apiVersion": "2019-05-01",
  "location": "string",
  "tags": {},
  "properties": {
    "state": "string",
    "endpointsConfiguration": {
      "workflow": {
        "outgoingIpAddresses": [
          {
            "address": "string"
          }
        ],
        "accessEndpointIpAddresses": [
          {
            "address": "string"
          }
        ]
      },
      "connector": {
        "outgoingIpAddresses": [
          {
            "address": "string"
          }
        ],
        "accessEndpointIpAddresses": [
          {
            "address": "string"
          }
        ]
      }
    },
    "sku": {
      "name": "string",
      "plan": {
        "id": "string"
      }
    },
    "accessControl": {
      "triggers": {
        "allowedCallerIpAddresses": [
          {
            "addressRange": "string"
          }
        ],
        "openAuthenticationPolicies": {
          "policies": {}
        }
      },
      "contents": {
        "allowedCallerIpAddresses": [
          {
            "addressRange": "string"
          }
        ],
        "openAuthenticationPolicies": {
          "policies": {}
        }
      },
      "actions": {
        "allowedCallerIpAddresses": [
          {
            "addressRange": "string"
          }
        ],
        "openAuthenticationPolicies": {
          "policies": {}
        }
      },
      "workflowManagement": {
        "allowedCallerIpAddresses": [
          {
            "addressRange": "string"
          }
        ],
        "openAuthenticationPolicies": {
          "policies": {}
        }
      }
    },
    "integrationAccount": {
      "id": "string"
    },
    "integrationServiceEnvironment": {
      "id": "string"
    },
    "definition": {},
    "parameters": {}
  }
}

Property values

The following tables describe the values you need to set in the schema.

Microsoft.Logic/workflows object

Name Type Required Value
name string Yes The workflow name.
type enum Yes Microsoft.Logic/workflows
apiVersion enum Yes 2019-05-01
location string No The resource location.
tags object No The resource tags.
properties object Yes The workflow properties. - WorkflowProperties object

WorkflowProperties object

Name Type Required Value
state enum No The state. - NotSpecified, Completed, Enabled, Disabled, Deleted, Suspended
endpointsConfiguration object No The endpoints configuration. - FlowEndpointsConfiguration object
sku object No The sku. - Sku object
accessControl object No The access control configuration. - FlowAccessControlConfiguration object
integrationAccount object No The integration account. - ResourceReference object
integrationServiceEnvironment object No The integration service environment. - ResourceReference object
definition object No The definition. See Schema reference for Workflow Definition Language in Azure Logic Apps.
parameters object No The parameters.

FlowEndpointsConfiguration object

Name Type Required Value
workflow object No The workflow endpoints. - FlowEndpoints object
connector object No The connector endpoints. - FlowEndpoints object

Sku object

Name Type Required Value
name enum Yes The name. - NotSpecified, Free, Shared, Basic, Standard, Premium
plan object No The reference to plan. - ResourceReference object

FlowAccessControlConfiguration object

Name Type Required Value
triggers object No The access control configuration for invoking workflow triggers. - FlowAccessControlConfigurationPolicy object
contents object No The access control configuration for accessing workflow run contents. - FlowAccessControlConfigurationPolicy object
actions object No The access control configuration for workflow actions. - FlowAccessControlConfigurationPolicy object
workflowManagement object No The access control configuration for workflow management. - FlowAccessControlConfigurationPolicy object

ResourceReference object

Name Type Required Value
id string No The resource id.

FlowEndpoints object

Name Type Required Value
outgoingIpAddresses array No The outgoing ip address. - IpAddress object
accessEndpointIpAddresses array No The access endpoint ip address. - IpAddress object

FlowAccessControlConfigurationPolicy object

Name Type Required Value
allowedCallerIpAddresses array No The allowed caller IP address ranges. - IpAddressRange object
openAuthenticationPolicies object No The authentication policies for workflow. - OpenAuthenticationAccessPolicies object

IpAddress object

Name Type Required Value
address string No The address.

IpAddressRange object

Name Type Required Value
addressRange string No The IP address range.

OpenAuthenticationAccessPolicies object

Name Type Required Value
policies object No Open authentication policies.

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Extend Existing Azure Resources with Custom Providers

Deploy to Azure
This sample will go into detail on how to extend existing Azure resources and Resource Manager templates to add in custom workloads.
Create a Custom Resource for templates with Custom Providers

Deploy to Azure
This sample shows how to add custom resources to Resource Manager Templates using custom providers and logic apps.
Custom Azure Event Grid Topic/Subscription with CloudEvents

Deploy to Azure
Creates a custom Azure Event Grid topic, a webhook subscription having CloudEvents schema, and a Logic App as an event handler. Template originally authored by Justin Yoo.
Deploy a sample logic app, to use as ELM custom action

Deploy to Azure
This template creates a simple logic app with all the authorization policy settings and schema to http trigger that is needed by ELM custom action API.
Integration Patterns - Message Router - Logic App

Deploy to Azure
Solution which shows how we can set up the Message Router pattern using a Logic App
Azure Logic App with Function

Deploy to Azure
This template creates a Serverless app in Azure with Logic Apps and Functions. The Logic App triggers on an HTTP POST, calls the Azure Function, and returns the response.
Create a Logic App using a template

Deploy to Azure
This template creates an empty logic app that can be used to define workflows.
Copy FTP files to Azure Blob logic app

Deploy to Azure
This template allows you to create a Logic app triggers on files in an FTP server and copies them to an Azure Blob container. You can add an additional triggers or actions to customize it to your needs.
Send email with Logic app

Deploy to Azure
This template allows you to create a Logic app that sends an email. You can add an additional triggers or actions to customize it to your needs.
Run a SQL stored procedure on a schedule via a logic app

Deploy to Azure
This template allows you to create a Logic App that will run a SQL stored procedure on schedule. Any arguments for the procedure can be put into the body section of the template.
Alert to queue with Logic app

Deploy to Azure
This template allows you to create a Logic app that has a webhook. When the Logic app is triggered, it will add the payload you pass to an Azure Storage queue that you specify. You can add this webhook to an Azure Alert and then whenever the Alert fires, you'll get that item in the queue.
Alert to Slack with Logic app

Deploy to Azure
This template allows you to create a Logic app that has a webhook to be used from an Azure Alert. When the Alert is triggered, it will post a message to a slack channel that you specify. You need to have a slack account to use this template.
Alert to text message with Logic app

Deploy to Azure
This template allows you to create a Logic app that has a webhook to be used from an Azure Alert. When the Alert is triggered, it will send you a text message with the details of the alert. It uses the go.gl URL shortening service to include a link to the portal to see the resource.
Azure Logic Apps - AS2 Send Receive

Deploy to Azure
Creates Integration Accounts for two partners (Contoso and Fabrikam) and adds Partners and Agreements into them. It creates Logic Apps between Fabrikam Sales and Contoso which demonstrate synchronous AS2 Send Receive. It also creates Logic Apps between Fabrikam Finance and Contoso which demonstrate asynchronous AS2 Send Receive.
Azure Logic Apps - B2B Disaster Recovery replication

Deploy to Azure
Creates replication Logic Apps for AS2 MIC, generated and received X12 control numbers. Each Logic App's trigger points to a primary site integration account. Each Logic App's action points to a secondary site integration account.
Correlating messages over Logic Apps using Service Bus

Deploy to Azure
which shows how we can correlate messages over Logic Apps using Azure Service Bus
Call custom APIs from Azure Logic Apps

Deploy to Azure
Although Logic Apps provides hundreds of connectors for various services, you might want to call APIs that run your own code. One of the easiest and most scalable ways to host your own web APIs is by using Azure App Service. This template deploys a Web app for your custom API and secures that API by using Azure Active Directory authentication.
Azure Logic Apps - VETER Pipeline

Deploy to Azure
Creates an integration account, adds schema/map into it, creates a logic app and associates it with the integration account. The logic app implements a VETER pipeline using Xml Validation, XPath Extract and Transform Xml operations.
Azure Logic Apps - XSLT with parameters

Deploy to Azure
Creates a request-response Logic App which performs XSLT based transformation. The XSLT map takes primitives (integer, string etc.) as input parameters as uses them during XML transformation.
Run timer jobs that execute on a schedule using Logic Apps.

Deploy to Azure
This template creates a pair of Logic Apps that allows you to create scheduled timer job instances.
Retrieve Azure Storage access keys in ARM template

Deploy to Azure
This template will create a Storage account, after which it will create a API connection by dynamically retrieving the primary key of the Storage account. The API connection is then used in a Logic App as a trigger polling for blob changes. The complete scenario can be found on https://blog.eldert.net/retrieve-azure-storage-access-keys-in-arm-template.