# Configure an External Catalog

This page outlines how to connect an external catalog on the Immuta app settings page. For details on external catalogs with Immuta, see the [External catalog reference page](https://documentation.immuta.com/2024.2/data-and-integrations/catalogs/reference-guides/pre-configuration).

## Link an Alation catalog

**Requirements**:

* `APPLICATION_ADMIN` Immuta permission
* An [Alation API access token](https://developer.alation.com/dev/docs/authentication-into-alation-apis#create-an-api-access-token) connected to a user with the [<mark style="color:blue;">`Server Admin`</mark>](https://developer.alation.com/dev/docs/alation-apis-by-roles) permission

{% hint style="info" %}
To change the default expiration period for your Alation catalog's API tokens, see [configure the expiration period for Alation API tokens](https://docs2.alationdata.com/en/latest/admins/AdditionalConfiguration/ConfigureAPITokensManagement.html#configure-the-expiration-period-for-api-tokens).
{% endhint %}

1. Navigate to the **App Settings** page.
2. Scroll to **2 External Catalogs**, and click **Add Catalog**.
3. Enter a **Display Name** and select **Alation** from the dropdown menu.
4. Complete the **URL** and **API key** fields. The API key must be an API access token for your Alation instance connected to a user with the [<mark style="color:blue;">`Server Admin`</mark>](https://developer.alation.com/dev/docs/alation-apis-by-roles) permission.
5. Configure whether or not Alation tags and custom fields are imported as Immuta tags:
   * **Link Alation tags**: When selected, Immuta imports Alation tags as Immuta tags.
   * **Link Alation Custom Fields**: When selected, Immuta imports Alation custom fields as Immuta tags. Follow the Alation documentation to [create an Alation custom field](https://docs.alation.com/en/latest/steward/TemplatesAndCustomFields/ManageCustomFields.html#create-or-edit-a-custom-field), [add permissions to your custom field](https://docs.alation.com/en/latest/steward/TemplatesAndCustomFields/ManageCustomFields.html#add-permissions-to-a-custom-field), and apply custom fields to tables and columns.
6. Opt to select **Upload Certificates**.
   1. Upload the **Certificate Authority**, **Certificate File**, and **Key File**.
   2. Opt to enable **Strict SSL** by selecting the checkbox.
7. Click the **Test Connection** button.
8. Once the connection is successful, click **Save**.

## Link a Collibra catalog

**Requirement**: `APPLICATION_ADMIN` Immuta permission

1. Navigate to the **App Settings** page.
2. Scroll to **2 External Catalogs**, and click **Add Catalog**.
3. Enter the **Display Name** and select **Collibra** from the dropdown menu.
4. Enter the HTTP endpoint of the catalog in the **URL** field.
5. Complete the **Username** and **Password** fields. *Note: This is the username and the password that Immuta can use to connect to the external catalog.*
6. Opt to **Require the data source name in Collibra to contain both the schema and table name** by selecting the checkbox.
7. Complete the **Asset Mappings** modal to set which asset types in Collibra should align to Immuta's data sources and columns.
8. Complete the **Attributes as Tags** modal to specify which Collibra attributes you would like to pull in as tags in Immuta.
9. Opt to select **Upload Certificates**.
   1. Upload the **Certificate Authority**, **Certificate File**, and **Key File**.
   2. Opt to enable **Strict SSL** by selecting the checkbox.
10. Click the **Test Connection** button.
11. Once the connection is successful, click **Save**.

## Link a Custom REST Catalog

**Requirement**: `APPLICATION_ADMIN` Immuta permission

Integrating a Custom REST Catalog service with Immuta requires implementing a REST interface. For details about the necessary endpoints that must be serviced, see the [Custom REST Catalog Interface Endpoints page](https://documentation.immuta.com/2024.2/data-and-integrations/catalogs/reference-guides/custom-rest-catalogs/interface).

1. Navigate to the **App Settings** page.
2. Scroll to **2 External Catalogs**, and click **Add Catalog**.
3. Enter the **Display Name** and select **Rest** from the dropdown menu.
4. Select the **Internal Plugin** checkbox if the catalog has been uploaded to Immuta as a custom server plugin.
5. Complete the following fields:
   1. Enter the HTTP endpoint of the catalog in the **URL** field.
   2. Complete the **Username** and **Password** fields.
   3. Enter the path of the **Tags Endpoint**.
   4. Enter the path of the **Data Source Endpoint**.
   5. Enter the path to the information page for a data source in the **Data Source Link Template** field.
6. Opt to enter the path to the information page for a column in the **Column Link Template** field.
7. Opt to upload a **Catalog Image**.
8. Opt to select **Upload Certificates**.
   1. Upload the **Certificate Authority**, **Certificate File**, and **Key File**.
   2. Opt to enable **Strict SSL** by selecting the checkbox.
9. Click the **Test Connection** button.
10. Click the **Test Data Source Link**.
11. Once both tests are successful, click **Save**.

## Enable Snowflake Tag Ingestion

{% hint style="info" %}
**Snowflake user authentication**

To configure Snowflake tag ingestion, which syncs Snowflake tags into Immuta, you must provide a Snowflake user who has, at minimum, the ability to set the following privileges:

* `GRANT IMPORTED PRIVILEGES ON DATABASE snowflake`
* `GRANT APPLY TAG ON ACCOUNT`
  {% endhint %}

1. Navigate to the **App Settings** page.
2. Scroll to **2 External Catalogs**, and click **Add Catalog**.
3. Enter a **Display Name** and select **Snowflake** from the dropdown menu.
4. Enter the **Account**.
5. Enter the **Authentication** information: **Username**, **Password**, **Port**, **Default Warehouse**, and **Role**.
6. Opt to enter the **Proxy Host**, **Proxy Port**, and **Encrypted Key File Passphrase**.
7. Opt to **Upload Certificates**.
8. Click the **Test Connection** button.
9. Click the **Test Data Source Link**.
10. Once both tests are successful, click **Save**.

## Manually Link Catalogs to Data Sources

For pre-existing data sources in Immuta, you can manually link them to external catalogs from the Data Source Details tab.

1. Navigate to your data source and click **Link** in the **Data Catalog** section on the right side of the page.
2. Select your **external catalog** from the dropdown menu.
3. Click **Link** to confirm.
