In this article, we’re going to learn how to use the Azure Logic Apps cloud service in detail.

We’ll start by looking at what an Azure Logic App is. Then, we’ll discuss some of its advantages. After that, we’ll learn how to create an Azure Logic App from the portal and configure its Triggers and Actions. Finally, we’ll run the Azure Logic App and verify that it works as expected.

We have divided this article into the following sections:

Let’s start by looking at what Azure Logic Apps is all about.

Azure Logic Apps – Intro

Azure Logic Apps is a cloud service with which we can schedule and automate business processes and workflows. This is specifically helpful when we need to integrate apps, data, systems, and services across organizations. Logic Apps simplifies the way we design and build scalable solutions for integrating apps, data, and systems.

For building integration solutions with Azure Logic Apps, we can choose from hundreds of ready-to-use Connectors, which include most of the common Azure services such as App Services, Azure Functions, SQL Server, Azure Storage, etc. Additionally, there are plenty of third-party connectors available for connecting with services like GitHub, Google Drive, Gmail, Twitter, Slack, etc. These connectors provide Triggers and Actions for creating workflows to access these services and process data in real-time:

azure logic apps

The Logic App workflow starts with a trigger, which fires when a specific event happens or when new data that meets specific criteria is available through a connector to external services. Each time a trigger fires, the Logic Apps engine creates a logic app instance that runs the actions defined in the workflow. Usually, the Logic App executes its actions on some external services using a connector to connect with them. This makes it an excellent tool for integrating our app with external services and orchestrating them.

We can build logic apps visually using the Logic Apps Designer, which is available in the Azure portal. It is also possible to design it using Visual Studio by installing the Azure development workload. In this article, we’ll learn how to create Logic Apps using the Azure portal. If we want to customize the Logic Apps further, it is possible to create or edit logic app definitions in JSON by using the “code view” editor. Finally, we can deploy and run the Logic Apps within the cloud environment.

Azure Logic Apps – Advantages

Now let’s take a look at what advantages Azure Logic Apps brings to the table. 

With businesses moving toward digitization, Logic Apps help us connect legacy systems with modern and cutting-edge applications quickly and easily by providing prebuilt APIs as connectors. That way, we can focus more on our app’s business logic and functionality rather than worrying about hosting, scaling, managing, and maintaining them. 

While creating Logic Apps, usually there is no need to write code. But if required, there is an option to create code snippets with Azure Functions and run the code on-demand from the Logic Apps. 

Azure Logic Apps is one of the most cost-effective Enterprise Integration Platforms (EIA) available in the market today. It makes creating workflows simple with its interactive, drag-and-drop design interface. Being a cloud-based serverless computing service, Logic Apps is flexible on account of its scalability. Furthermore, it provides in-built monitoring for getting historical insights.

Azure Logic Apps offers hundreds of enterprise connectors out of the box and the team keeps on adding new connectors from time to time. If we want to communicate with a service that isn’t available as a pre-built connector or need to connect to our service, we can do that. All we have to do is to go ahead and create a custom connector by defining its triggers and actions to address this scenario. Of course, this is a bit advanced topic, but quite possible.

Creating Azure Logic Apps from the Portal

For creating a Logic App from the Azure portal, we can make use of the Logic App template available in the Marketplace:

create azure logic apps

After selecting the Logic App template, we need to provide a few details for the app:

create a logic app details

  1. First, we need to select an existing Subscription.
  2. Then we need to either select an existing Resource Group or create a new one.
  3. After that, we need to choose a Name for the Logic App.
  4. Then, we need to choose a Region.
  5. Other fields are optional and we can leave those with their default values and proceed to create the Logic App by first clicking on the Review + Create button and then on the Create button. 

The portal shows us the step by step progress of the deployment till it is completed:

deployment complete

Once the Logic App is created, we can navigate to it by clicking on the Go to resource link.

Navigating to the Logic App will land us on the designer screen. There, we can see a list of templates that can help us to create a Logic App quickly. However, in this example, we are going to use the Blank Logic App template as we are planning to build an app from the scratch:

blank logic app template

Now it’s time to configure the Triggers and Actions for our app.

Configuring the Trigger

On choosing the Blank Logic App template, we can see a list of all available connectors for creating a trigger:

azure logic apps connectors

In this example, we are going to implement a trigger that fires when a new file is uploaded to Azure Storage. For that, we need to use the Azure BLOB Storage connector. After searching for the Azure BLOB Storage connector and selecting it, we need to select the When a blob is added or modified trigger:

blob trigger

Once we select the trigger, we need to provide the parameters for it.

For configuring an Azure BLOB Storage trigger, we need to have an Azure Storage account in the same subscription. If it is not available, we need to create one. We have explained the process of creating an Azure Storage Account in the Creating Azure Storage section of the Upload Files to Azure with .NET Core Web API and Blazor WebAssembly article. 

In case we have multiple storage accounts in the subscription, we need to choose one account and connect to it. After selecting the Storage account, we need to choose the storage Container, and specify the Number of blobs to returned from the trigger and How often to check for new items:

trigger parameters

Once we provide these values, we can save the logic app. 

Cool!

Our logic app trigger will check if new files are uploaded to the selected BLOB container every minute.

Configuring the Action

The next step is configuring an action for the Logic App. In this example, we are going to use the Office 365 Outlook connector to send an email. We can search for the Office 365 Outlook connector and select it. To start using this connector, we need to have a valid Office 365 account and establish a connection to it by signing in:

o365 sign in

After signing in, we can search for Send an email(V2) action:

office 365 outlook connector

Once we choose the Send an email(V2) action, we need to provide the parameters for it:

send an email action

Here we need to provide the details required to send an email like To, Subject, and Body. We have an option to use Dynamic Content from the selected connector if we want to get specific data. Depending on the kind of connector we choose, it will provide us some dynamic content. In this example, we are using the List of Files Name dynamic content which will fetch the name of the uploaded file from the BLOB trigger. 

After providing these details, we can save the Logic App once again. The app will now have a BLOB trigger that fires when a new file is uploaded and an Office 365 Outlook Action that sends an email by taking information about the uploaded file:

trigger and action for Azure Logic Apps

Also, It is possible to edit the code for the Logic App by switching to Code View:

code view button

In a code view, we can see JSON based structure that defines the triggers and actions that we create for the Logic App: 

code view editor for Azure Logic Apps

We can create and modify the Logic App in the code view if we prefer that way.

Great!

We have successfully configured the Triggers and Actions for the Logic App. Now it’s time to test it.

Testing Azure Logic Apps

We can run the Logic App by clicking on the Run button in the Logic App designer:

run azure logic apps button

Once we run the Logic App, it will check the trigger for new data in the specified interval. Remember in this example we have specified the interval as 1 minute.

Now, let’s trigger the Logic App by uploading a file to the mapped storage account container:

file uploaded to blob

As soon as the file is uploaded into the BLOB storage, it will trigger the Logic App and the Logic App will execute its action. We can verify this by checking the Runs History tab in the Overview blade of the Azure Logic App:

run history

Here what we see is the details of each run like Start time, Duration, Status, etc.

Verifying The Action

We have seen that the Azure Logic App has successfully run, but let’s verify the action of the Logic App. Remember that we had configured the Logic App to send an email when a new file is uploaded to the BLOB storage. Let’s verify if we receive the email. Once we check the inbox, we can see an email with the specified details: 

email from azure logic apps

Notice how the file name is extracted and added to the email body as dynamic content.

Cool!

We have verified that the Azure Logic App executes its action perfectly.

It is possible to represent the workflow of the Azure Logic App that we implemented in this example using a simple diagram:

azure logic apps workflow

Whenever a new file is uploaded to the storage container, it triggers the Logic App, which executes the action to send an email with details of the uploaded file.

Conclusion

Think about how easily we could create a business workflow using Azure Logic Apps. Imagine how many lines of code we would require for implementing this scenario if we were to develop this solution by writing custom code. First, we would need to connect with a storage account, check for new files in the container at a specified interval, etc. Then once a new file arrives in the storage container, we have to integrate with the email service and extract details of the uploaded file and send the email. 

With Logic Apps, we can just configure all these using a simple and easy-to-use designer. Additionally, there are hundreds of connectors available which will help in integrating with most of the commonly used apps and services. Another advantage is that even people without coding expertise, like business users, can create Logic Apps using the designer.

So to sum up, we have learned:

  • A lot about the Azure Logic Apps service and its advantages.
  • How to create an Azure Logic App From the portal and configuring its Triggers and Actions
  • How to run the Azure Logic App from the portal and verifying its Action

Until the next article.