What is Azure Logic Apps
Logic Apps is a cloud-based platform that helps you create and run automated workflows for integrating apps, data, services, and systems. Using this platform, you can more easily and quickly build highly scalable integration solutions for enterprise and business-to-business (B2B) scenarios. As a member of Azure Integration Services, Logic Apps provides a simpler way for you to connect legacy, modern, and cutting-edge systems across cloud, on premises, and hybrid environments.
This list describes just a few example tasks, business processes, and workloads that you can automate with the Logic Apps service:
- Schedule and send email notifications using Office 365 when a specific event happens, for example, a new file is uploaded.
- Route and process customer orders across on-premises systems and cloud services.
- Move uploaded files from an SFTP or FTP server to Azure Storage.
- Monitor tweets, analyze the sentiment, and create alerts or tasks for items that need review.
- Azure services such as Blob Storage and Service Bus
- Office services such as Outlook, Excel, and SharePoint
- Database servers such as SQL and Oracle
- Enterprise systems such as SAP and IBM MQ
- File shares such as FTP and SFTP
For B2B integration scenarios, Logic Apps includes capabilities from BizTalk Server. You can create an integration account where you define trading partners, agreements, schemas, maps, and other B2B artifacts. When you link this account to a logic app, you can build workflows that work with these artifacts and exchange messages using protocols such as AS2, EDIFACT, X12, and RosettaNet.
For more information about the ways workflows can access and work with apps, data, services, and systems, review the following documentation:
- Connectors for Azure Logic Apps
- Managed connectors for Azure Logic Apps
- Built-in triggers and actions for Azure Logic Apps
- B2B enterprise integration solutions with Azure Logic Apps
Workflow: A series of steps that defines a task or process, starting with a single trigger and followed by one or multiple actions
Trigger: The first step that starts every workflow and specifies the condition to meet before running any actions in the workflow. For example, a trigger event might be getting an email in your inbox or detecting a new file in a storage account.
Action: Each subsequent step that follows after the trigger and runs some operation in a workflow
Managed connector: A Microsoft-managed REST API that provides access to a specific app, data, service, or system. Before you can use them, most managed connectors require that you first create a connection from your workflow and authenticate your identity.
For example, you can start a workflow with a trigger or include an action that works with Azure Blob Storage, Office 365, Salesforce, or SFTP servers. For more information, review Managed connectors for Azure Logic Apps.
Built-in trigger or action: A natively running Logic Apps operation that provides a way to control your workflow's schedule or structure, run your own code, manage or manipulate data, or complete other tasks in your workflow. Most built-in operations aren't associated with any service or system. Many also don't require that you first create a connection from your workflow and authenticate your identity. Built-in operations are also available for a few services, systems, and protocols, such as Azure Functions, Azure API Management, Azure App Service, and more.
For example, you can start almost any workflow on a schedule when you use the Recurrence trigger. Or, you can have your workflow wait until called when you use the Request trigger. For more information, review Built-in triggers and actions for Azure Logic Apps.
Logic app: The Azure resource to create for building a workflow. Based on your scenario's needs and solution's requirements, you can create logic apps that run in either the multi-tenant or single-tenant Logic Apps service environment or that run in an integration service environment. For more information, review Host environments for logic apps.
How logic apps work
In a logic app, each workflow always starts with a single trigger. A trigger fires when a condition is met, for example, when a specific event happens or when data meets specific criteria. Many triggers include scheduling capabilities that control how often your workflow runs. Following the trigger, one or more actions run operations that, for example, process, handle, or convert data that travels through the workflow, or that advance the workflow to the next step.
For example, the following workflow starts with a Dynamics trigger that has a built-in condition named When a record is updated. The actions include transforming XML, calling a web app that updates data, evaluating a condition that controls which actions to take, and sending an email notification with the results. When the trigger detects an event that meets the condition, the trigger fires, and the actions in the workflow start to run. Each time the trigger fires, the Logic Apps service creates a workflow instance that runs the actions.
Based on your scenario and solution requirements, you can create logic apps that differ in the Logic Apps service environment where they run and how workflows use resources. The following table briefly summarizes these differences.
|Azure Logic Apps (multi-tenant)||Consumption||A logic app can have only one workflow.
Workflows from different logic apps across multiple tenants share the same processing (compute), storage, network, and so on.
|Azure Logic Apps (single-tenant (Preview))||Preview||A logic app can have multiple workflows.
Workflows from the same logic app in a single tenant share the same processing (compute), storage, network, and so on.
|Integration service environment (ISE)||Fixed||A logic app can have only one workflow.
Workflows from different logic apps in the same environment share the same processing (compute), storage, network, and so on.
Why use Logic Apps
The Logic Apps integration platform provides prebuilt Microsoft-managed API connectors and built-in operations so you can connect and integrate apps, data, services, and systems more easily and quickly. You can focus more on designing and implementing your solution's business logic and functionality, not on figuring out how to access your resources.
You usually won't have to write any code. However, if you do need to write code, you can create code snippets using Azure Functions and run that code from your workflow. You can also create code snippets that run in your workflow by using the Inline Code action. If your workflow needs to interact with events from Azure services, custom apps, or other solutions, you can monitor, route, and publish events using Azure Event Grid.
Logic Apps is fully managed by Microsoft Azure, which frees you from worrying about hosting, scaling, managing, monitoring, and maintaining solutions built with these services. When you use these capabilities to create "serverless" apps and solutions, you can just focus on the business logic and functionality. These services automatically scale to meet your needs, make integrations faster, and help you build robust cloud apps using little to no code.
To learn how other companies improved their agility and increased focus on their core businesses when they combined Logic Apps with other Azure services and Microsoft products, check out these customer stories.
The following sections provide more information about the capabilities and benefits in Logic Apps:
Visually create and edit workflows with easy-to-use tools
Save time and simplify complex processes by using the visual design tools in Logic Apps. Create your workflows from start to finish by using the Logic Apps Designer in the Azure portal, Visual Studio Code, or Visual Studio. Just start your workflow with a trigger, and add any number of actions from the connectors gallery.
If you're creating a multi-tenant logic app, get started faster when you create a workflow from the templates gallery. These templates are available for common workflow patterns, which range from simple connectivity for Software-as-a-Service (SaaS) apps to advanced B2B solutions plus "just for fun" templates.
Connect different systems across various environments
Some patterns and processes are easy to describe but hard to implement in code. The Logic Apps platform helps you seamlessly connect disparate systems across cloud, on-premises, and hybrid environments. For example, you can connect a cloud marketing solution to an on-premises billing system, or centralize messaging across APIs and systems using Azure Service Bus. Logic Apps provides a fast, reliable, and consistent way to deliver reusable and reconfigurable solutions for these scenarios.
Write once, reuse often
Create your logic apps as Azure Resource Manager templates so that you can set up and automate deployments across multiple environments and regions.
First-class support for enterprise integration and B2B scenarios
Businesses and organizations electronically communicate with each other by using industry-standard but different message protocols and formats, such as EDIFACT, AS2, X12, and RosettaNet. By using the enterprise integration capabilities supported by Logic Apps, you can create workflows that transform message formats used by trading partners into formats that your organization's systems can interpret and process. Logic Apps handles these exchanges smoothly and securely with encryption and digital signatures.
You can start small with your current systems and services, and then grow incrementally at your own pace. When you're ready, the Logic Apps platform helps you implement and scale up to more mature integration scenarios by providing these capabilities and more:
- Integrate and build off Microsoft BizTalk Server, Azure Service Bus, Azure Functions, Azure API Management, and more.
- Exchange messages using EDIFACT, AS2, X12, and RosettaNet protocols.
- Process XML messages and flat files.
- Create an integration account to store and manage B2B artifacts, such as trading partners, agreements, transform maps, validation schemas, and more.
For example, if you use Microsoft BizTalk Server, your workflows can communicate with your BizTalk Server using the BizTalk Server connector. You can then run or extend BizTalk-like operations in your workflows by using integration account connectors. Going in the other direction, BizTalk Server can communicate with your workflows by using the Microsoft BizTalk Server Adapter for Logic Apps. Learn how to set up and use the BizTalk Server Adapter in your BizTalk Server.
If no suitable connector is available to run the code you want, you can create and call your own code snippets from your workflow by using Azure Functions. Or, create your own APIs and custom connectors that you can call from your workflows.
Access resources inside Azure virtual networks
Logic app workflows can access secured resources, such as virtual machines (VMs) and other systems or services, that are inside an Azure virtual network when you create an integration service environment (ISE). An ISE is a dedicated instance of the Logic Apps service that uses dedicated resources and runs separately from the global multi-tenant Logic Apps service.
Running logic apps in your own dedicated instance helps reduce the impact that other Azure tenants might have on app performance, also known as the "noisy neighbors" effect. An ISE also provides these benefits:
Your own static IP addresses, which are separate from the static IP addresses that are shared by the logic apps in the multi-tenant service. You can also set up a single public, static, and predictable outbound IP address to communicate with destination systems. That way, you don't have to set up extra firewall openings at those destination systems for each ISE.
Increased limits on run duration, storage retention, throughput, HTTP request and response timeouts, message sizes, and custom connector requests. For more information, review Limits and configuration for Azure Logic Apps.
When you create an ISE, Azure injects or deploys that ISE into your Azure virtual network. You can then use this ISE as the location for the logic apps and integration accounts that need access. For more information about creating an ISE, review Connect to Azure virtual networks from Azure Logic Apps.
Each logic app type, which differs by capabilities and where they run (multi-tenant, single-tenant, integration service environment), has a different pricing model. For example, multi-tenant logic apps use consumption-based pricing, while logic apps in an integration service environment use fixed pricing. Learn more about pricing and metering for Logic Apps.
How does Logic Apps differ from Functions, WebJobs, and Power Automate?
All these services help you connect and bring together disparate systems. Each service has their advantages and benefits, so combining their capabilities is the best way to quickly build a scalable, full-featured integration system. For more information, review Choose between Logic Apps, Functions, WebJobs, and Power Automate.
Before you can start with Azure Logic Apps, you need an Azure subscription. If you don't have a subscription, sign up for a free Azure account. Otherwise, try this quickstart to create your first logic app, which monitors new content on a website through an RSS feed and sends email when new content appears.
Learn more about the Logic Apps platform with these introductory videos: