What is Azure Logic Apps?
Azure Logic Apps is a cloud-based platform for creating and running automated workflows that integrate your apps, data, services, and systems. With this platform, you can quickly develop highly scalable integration solutions for your enterprise and business-to-business (B2B) scenarios. As a member of Azure Integration Services, Logic Apps simplifies the way that you connect legacy, modern, and cutting-edge systems across cloud, on premises, and hybrid environments.
The following list describes just a few example tasks, business processes, and workloads that you can automate using 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.
Based on the logic app resource type that you choose and create, your logic apps run in either a multi-tenant, single-tenant, or dedicated integration service environment. For example, when you containerize single-tenant logic apps, you can deploy your apps as containers and run them anywhere that Azure Functions can run. For more information, review Resource type and host environment differences for logic apps.
- Azure services such as Blob Storage and Service Bus
- Office 365 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. To define business-to-business (B2B) artifacts, you create integration account where you store these artifacts. After you link this account to your logic app, your workflows can use these B2B artifacts and exchange messages that comply with Electronic Data Interchange (EDI) and Enterprise Application Integration (EAI) standards.
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
Logic app: The Azure resource to create when you want to develop a workflow. Based on your scenario's needs and solution's requirements, you can create logic apps that run in the multi-tenant, single-tenant (preview), or integration service environment (ISE). For more information, review Resource type and host environment differences for 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.
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. However, built-in operations are also available for some frequently used 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.
Managed connector: A prebuilt proxy or wrapper around a REST API that provides prebuilt triggers and actions for your workflow to access a specific app, data, service, or system. Before you can use most managed connectors, you must first create a connection from your workflow and authenticate your identity.
For example, you can start a workflow with a trigger or add an action that works with Azure Blob Storage, Office 365, Salesforce, or SFTP servers. Managed connectors are hosted and maintained by Microsoft. For more information, review Managed connectors for Azure Logic Apps.
Integration account: The Azure resource to create when you want to define and store B2B artifacts for use in your workflows. After you link this account to your logic app, your workflows can use these B2B artifacts and exchange messages that comply with Electronic Data Interchange (EDI) and Enterprise Application Integration (EAI) standards.
For example, you can define trading partners, agreements, schemas, maps, and other B2B artifacts. You can create workflows that use these artifacts and exchange messages over protocols such as AS2, EDIFACT, X12, and RosettaNet. For more information, review Create and manage integration accounts for B2B enterprise integrations.
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.
Resource type and host environment differences
To create logic app workflows, you choose the Logic App resource type based on your scenario, solution requirements, the capabilities that you want, and the environment where you want to run your workflows.
The following table briefly summarizes differences between the original Logic App (Consumption) resource type and the new Logic App (Preview) resource type. You'll also learn how the single-tenant (preview) environment compares to the multi-tenant and integration service environment (ISE) for deploying, hosting, and running your logic app workflows.
|Resource type||Host environment||Resource sharing and usage||Pricing and billing model||Limits management|
|Logic App (Consumption)||Multi-tenant||A single logic app can have only one workflow.
Logic apps created by customers across multiple tenants share the same processing (compute), storage, network, and so on.
|Consumption (pay-per-use)||Azure Logic Apps manages the default values for these limits, but you can change some of these values, if that option exists for a specific limit.|
|Logic App (Consumption)||Integration service environment
|A single logic app can have only one workflow.
Logic apps in the same environment share the same processing (compute), storage, network, and so on.
|ISE (fixed)||Azure Logic Apps manages the default values for these limits, but you can change some of these values, if that option exists for a specific limit.|
|Logic App (Preview)||Single-tenant
|A single logic app can have multiple stateful and stateless workflows.
Workflows in a single logic app and tenant share the same processing (compute), storage, network, and so on.
|Preview (Functions Premium or App Service hosting plan with a specific pricing tier)||You can change the default values for many limits, based on your scenario's needs.
Important: Some limits have hard upper maximums. In Visual Studio Code, the changes you make to the default limit values in your logic app project configuration files won't appear in the designer experience.
For more information, see Create workflows for single-tenant Azure Logic Apps using Visual Studio Code.
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 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: