# How to install an integration

import DocButton from '~/components/webkit/DocButton.vue';

**Azion Integrations** allows you to improve, compose, or customize your applications. These integrations are based on functions and are executed on the edge. This documentation will guide you to install an integration in an existing application.

Considering Azion Marketplace has integrations that run functions in two ways, you'll need to proceed according to the type of integration you want to install:

- [Application integrations](#edge-application-integrations)
- [Firewall integrations](#edge-firewall-integrations)

<DocButton href="/en/documentation/products/marketplace/integrations/" label="go to integrations reference" kind="secondary" size="medium" /> 


<br />
<DocButton href="/en/documentation/products/guides/#marketplace" label="Go to integrations guides" kind="secondary" size="medium" /> 



---

## Application integrations

These integrations run tasks and services on the edge, closer to the user, employing an *existing* application.

:::tip
To build a new application, go to the [Build](/en/documentation/products/guides/build/build-an-application/) journey for more details on this topic.
:::

To install and instantiate this type of integration, follow the next steps.

### Getting the integration

Access [Azion Console](https://console.azion.com) and go to **Marketplace** to select the integration you want to install.

After selecting the integration, click the **Get It Now** button, at the bottom-right corner of the page, and a successful message appears to confirm your integration is installed.

:::tip
You can search any integration by browsing through the cards or typing a keyword in the search box. 
:::

### Configuring the integration

Once you’ve gotten your integration, you’ll have to select an application to use the integration. To do so:

1. On the upper-left corner, select **Products menu** > **Application** on the **BUILD** section.
2. On the listing page of your applications, select the one you want to use with the integration.
3. On the application page, open the **Main Settings** tab and enable the Functions switch.
4. Click the **Save** button.

### Instantiating the integration

To add the function and set the Args, still on the application page:

1. Select the **Functions** tab.
2. Click the **Add Function** button.
3. Choose an easy to remember name for your function.
4. On the dropdown function menu, select the function related to your integration.

This action will load the function, showing a form with the function’s code and, just above it, two tabs: **Code** and **Args**.

On the **Code** tab, you’ll be able to navigate through the code, but won’t be able to change it. On the **Args** tab, you’ll pass the parameters.

:::tip
Go to [Azion's guides page](/en/documentation/products/guides/#marketplace) to read the specifications for each integration.
:::

### Setting up a rule on Rules Engine

To finish, you'll need to create a new rule, with the criteria and behavior to apply to your function.

Still on the application page, proceed as follows:

1. Select the **Rules Engine** tab.
2. Click on **Default Rule**.
- You can’t change the criteria field for the Default Rule on Rules Engine.
3. On the behavior field, select **Run Function** from the dropdown menu and then select the function, according to the name you gave it in the instantiation step.
4. Click the **Save** button.

Done. Now your function is running on the edge.

---

## Firewall Integrations

These functions take advantage of the features of Firewall and Rules Engine to protect your network, applications, and resources from unauthorized access, malicious traffic, cyberattacks, bad bots, and other security threats.

To install and instantiate this type of integration, follow the next steps.

### Getting the integration

Access [Azion Console](https://console.azion.com) and go to **Marketplace** to select the integration you want to install.

After selecting the integration, click the **Get It Now** button, at the bottom-right corner of the page, and a successful message appears to confirm your integration is installed.

:::tip
You can search any integration by browsing through the cards or typing a keyword in the search box. 
:::

### Setting up a firewall

To start the configuration of a Firewall Integration, follow these steps:

1. On the **Products menu**, select **Firewall** in the **SECURE** section.
2. Click the **Add Rule Set** button.
3. Give an easy-to-remember name to your firewall.
4. Select the domains you want to protect with the function.
5. Enable the **Functions** switch.
6. Click the **Save** button.

### Setting up a Firewall function

To instantiate your integration, still on the Firewall page:

1. Select the **Functions** tab.
2. Click the **Add Function** button.
3. Give an easy to remember name to your instance.
4. On the dropdown menu, select the function related to your integration.

This action will load the function, showing a form with the function’s code and, just above it, two tabs: **Code** and **Args**.

On the **Code** tab, you’ll be able to navigate through the code, but won’t be able to change it. On the **Args** tab, you’ll pass the parameters.

:::tip
Go to [Azion's guides page](/en/documentation/products/guides/#marketplace) to read the specifications for each integration.
:::

### Configuring Firewall Rules Engine

To finish, you have to set up the Rules Engine to configure the criteria and the behavior to run the function.

Still on the Firewall page:

1. Select the **Rules Engine** tab.
2. Click the **New Rule** button.
3. Give a name to the rule.
4. Select a *criteria* to run and catch the domain you want to run the integrationn on. Example: `if Hostname is equal xxxxxxxxxxxx.map.azionedge.net`.
5. Below, select a *behavior* to the criteria. In this case, it’ll be **Run Function**.
- Select the adequate function according to the name you gave it in the instantiate step.
6. Click the **Save** button.

Done. Now your integration is running for every request made to the domain you indicated.

---

## Third-party integration

Some integrations are integrated with third-party tools to provide a more comprehensive and modern solution. Using this type of integration will require compliance with certain requirements such as creating an account or initial setup. In some cases, this integration could generate cost by usage.

:::tip
Go to [Azion's guides page](/en/documentation/products/guides/#marketplace) to read the specifications for each integration.
:::

---

## Managing an integration

Afterward, you can view all your integrations in your **Functions** list. To review your functions, proceed as follows:

1. Access [Azion Console](https://console.azion.com).
2. Open the **Products menu** and select **Functions** in the **Edge Libraries** section.

This wiil open the **Functions** list, showing all your functions, including those related to integrations. Select any given function to check the details.

### Integrations’ update process

The integrations presented within Marketplace aren’t static. Azion and Azion’s partners can update them when they launch new features. Thus, the recommendation is to always have the most updated integration version.

<DocButton href="/en/documentation/products/marketplace/update-an-integration/" label="Go to How to update an integration guide" kind="secondary" size="medium" />