# Deregister a Host

To deregister a host from Immuta, do the following:

1. [Generate a script to clean up any Immuta-managed resources from your data platform.](#post-integrations-id-scripts-delete)
2. [Delete the host in Immuta.](#delete-data-object-connectionkey)
3. [Run the script in Databricks Unity Catalog or Snowflake to clean up any Immuta-managed resources from your environment.](#step-3-run-the-cleanup-script-in-your-data-platform)

## Step 1: Generate the cleanup script

<mark style="color:green;">`POST`</mark> `/integrations/{id}/scripts/delete`

Creates a script to remove Immuta-managed resources from your data platform.

**Required Immuta permission**: `APPLICATION_ADMIN`

```
curl -X 'POST' \
    'https://www.organization.immuta.com/integrations/1/scripts/delete' \
    -H 'accept: application/json' \
    -H 'Content-Type: application/json' \
    -H 'Authorization: 846e9e43c86a4ct1be14290d95127d13f'
```

#### Path parameters

| Attribute        | Description                                                                                                                                                                                                                                                                                         | Required |
| ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
| **id** `integer` | The integration ID. Use the [<mark style="color:blue;">`GET /integrations`</mark>](https://documentation.immuta.com/saas/~/changes/l3NnvynMHxi6VvqRtJhK/developer-guides/integrations-api/reference-guides/integrations-api#get-integrations) endpoint to list all your integrations and their IDs. | **Yes**  |

#### Response <a href="#response-8" id="response-8"></a>

The response returns the script that you will run in your Databricks Unity Catalog or Snowflake environment. Copy it for later.

## Step 2: Delete the host in Immuta

<mark style="color:green;">`DELETE`</mark> `/data/object/{connectionKey}`

Delete the given host and all its child objects.

**Required Immuta permission**: `INFRASTRUCTURE_ADMIN` or `DATA_OWNER` on the object

```
curl -X 'DELETE' \
    'https://<your-immuta-url>/data/object/yourConnectionKey' \
    -H 'accept: application/json' \
    -H 'Content-Type: application/json' \
    -H 'Authorization: <your-bearer-token>' \
```

#### Path parameters

| Attribute                  | Description                                       | Required |
| -------------------------- | ------------------------------------------------- | -------- |
| **connectionKey** `string` | The key to uniquely identify the host connection. | **Yes**  |

#### Response schema

| Attribute                  | Description                                                       |
| -------------------------- | ----------------------------------------------------------------- |
| **connectionKey** `string` | The key to uniquely identify the host connection.                 |
| **childCount** `integer`   | The number of child objects of the data object that were deleted. |

#### Example response

```
{
  objectPath: ['yourConnectionKey'],
  childCount: 5
}
```

## Step 3: Run the cleanup script in your data platform

Using the copied generated cleanup script from earlier, run it in your Snowflake or Databricks Unity Catalog environment as a privileged user.

The script will remove any objects that were initially created during the [Register a host](https://documentation.immuta.com/saas/~/changes/l3NnvynMHxi6VvqRtJhK/developer-guides/api-intro/enhanced-onboarding-api/how-to-guides/connect-a-host) process.
