# Manage Webhooks

**Required Immuta permission**: `APPLICATION_ADMIN`

## Webhook configuration

### With the UI

1. Navigate to the <i class="fa-gear">:gear:</i> [**Webhooks** page](https://app.immutacloud.com/marketplace/settings/webhooks).
2. Click **New webhook**.
3. Enter the **Webhook URL** to send the webhook to.
4. Opt to enter a **Secret**.
5. If necessary, disable **TLS verification** with the toggle. Disabling is **not recommended**.
6. Click **Save**.

### With the API

Ensure you set the [correct global segment](/saas/developer-guides/api-intro/marketplace-api.md#base-path-and-global-segment) and use a [Request app personal access token (PAT)](/saas/developer-guides/api-intro/marketplace-api.md#generate-a-personal-access-token-pat) when using the Request app API. See the [Request app API docs](/saas/developer-guides/api-intro/marketplace-api.md) for additional guidance or to download the OpenAPI YAML for your own client generation.

## Create webhook

> Create a new webhook

```json
{"openapi":"3.0.0","info":{"title":"Immuta Data Marketplace","version":"1.0"},"tags":[{"name":"Notification","description":"APIs for managing notifications"}],"servers":[{"url":"https://{global-segment}.api.immutacloud.com/marketplace","description":"Marketplace API Endpoint","variables":{"global-segment":{"default":"na","enum":["na","eu","ap"],"description":"Marketplace API global segment"}}}],"security":[{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"scheme":"bearer","bearerFormat":"JWT","type":"http"}},"schemas":{"CreateWebhook":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"verifyTls":{"default":true,"type":"boolean"},"signingKey":{"type":"string"}},"required":["url"]},"Webhook":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"url":{"type":"string","format":"uri"},"verifyTls":{"default":true,"type":"boolean"},"signingKey":{"default":false,"type":"boolean"},"suppressed":{"default":false,"type":"boolean"}},"required":["id","url"]}}},"paths":{"/api/notification/webhook":{"post":{"description":"Create a new webhook","summary":"Create webhook","operationId":"createWebhook","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhook"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Webhook"}}}}},"tags":["Notification"]}}}}
```

## Test the webhook

### With the UI

To send a test webhook,

1. Navigate to  the <i class="fa-gear">:gear:</i> [**Webhooks** page](https://app.immutacloud.com/marketplace/settings/webhooks) and select the webhook you want to test.
2. Click **Test Webhook**.

### With the API

Ensure you set the [correct global segment](/saas/developer-guides/api-intro/marketplace-api.md#base-path-and-global-segment) and use a [Request app personal access token (PAT)](/saas/developer-guides/api-intro/marketplace-api.md#generate-a-personal-access-token-pat) when using the Request app API. See the [Request app API docs](/saas/developer-guides/api-intro/marketplace-api.md) for additional guidance or to download the OpenAPI YAML for your own client generation.

## Test webhook configuration

> Test all webhook configurations

```json
{"openapi":"3.0.0","info":{"title":"Immuta Data Marketplace","version":"1.0"},"tags":[{"name":"Notification","description":"APIs for managing notifications"}],"servers":[{"url":"https://{global-segment}.api.immutacloud.com/marketplace","description":"Marketplace API Endpoint","variables":{"global-segment":{"default":"na","enum":["na","eu","ap"],"description":"Marketplace API global segment"}}}],"security":[{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"scheme":"bearer","bearerFormat":"JWT","type":"http"}},"schemas":{"CreateWebhook":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"verifyTls":{"default":true,"type":"boolean"},"signingKey":{"type":"string"}},"required":["url"]},"WebhookTestResult":{"type":"object","properties":{"status":{"type":"string","enum":["UNSPECIFIED","SUCCESS","FAILED",0,1,2]},"httpStatusCode":{"type":"number"},"errorMessage":{"type":"string"}},"required":["status","httpStatusCode"]}}},"paths":{"/api/notification/webhook/test":{"post":{"description":"Test all webhook configurations","summary":"Test webhook configuration","operationId":"testWebhookConfig","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhook"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookTestResult"}}}}},"tags":["Notification"]}}}}
```

## Reset a webhook secret

If you lose or forget the secret you set in a webhook, you can reset it.

{% hint style="warning" %}
**Update integrations**

Any integrations using the old secret must be updated once you reset it.
{% endhint %}

### With the UI

1. Navigate to the <i class="fa-gear">:gear:</i> [**Webhooks** page](https://app.immutacloud.com/marketplace/settings/webhooks).
2. Click the webhook you want to edit, which will open the side-sheet.
3. Click **Reset secret**.

### With the API

Ensure you set the [correct global segment](/saas/developer-guides/api-intro/marketplace-api.md#base-path-and-global-segment) and use a [Request app personal access token (PAT)](/saas/developer-guides/api-intro/marketplace-api.md#generate-a-personal-access-token-pat) when using the Request app API. See the [Request app API docs](/saas/developer-guides/api-intro/marketplace-api.md) for additional guidance or to download the OpenAPI YAML for your own client generation.

## Update webhook

> Update the details of a specific webhook by ID

```json
{"openapi":"3.0.0","info":{"title":"Immuta Data Marketplace","version":"1.0"},"tags":[{"name":"Notification","description":"APIs for managing notifications"}],"servers":[{"url":"https://{global-segment}.api.immutacloud.com/marketplace","description":"Marketplace API Endpoint","variables":{"global-segment":{"default":"na","enum":["na","eu","ap"],"description":"Marketplace API global segment"}}}],"security":[{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"scheme":"bearer","bearerFormat":"JWT","type":"http"}},"schemas":{"UpdateWebhook":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"verifyTls":{"default":true,"type":"boolean"},"signingKey":{"type":"string"}}},"Webhook":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"url":{"type":"string","format":"uri"},"verifyTls":{"default":true,"type":"boolean"},"signingKey":{"default":false,"type":"boolean"},"suppressed":{"default":false,"type":"boolean"}},"required":["id","url"]}}},"paths":{"/api/notification/webhook/{id}":{"put":{"description":"Update the details of a specific webhook by ID","summary":"Update webhook","operationId":"updateWebhook","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWebhook"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Webhook"}}}}},"tags":["Notification"]}}}}
```

## Delete webhook

### With the UI

1. Navigate to  the <i class="fa-gear">:gear:</i> [**Webhooks** page](https://app.immutacloud.com/marketplace/settings/webhooks).
2. Click the webhook you want to delete, which will open the side-sheet.
3. Click **Delete**, and then **Delete** again.

### With the API

Ensure you set the [correct global segment](/saas/developer-guides/api-intro/marketplace-api.md#base-path-and-global-segment) and use a [Request app personal access token (PAT)](/saas/developer-guides/api-intro/marketplace-api.md#generate-a-personal-access-token-pat) when using the Request app API. See the [Request app API docs](/saas/developer-guides/api-intro/marketplace-api.md) for additional guidance or to download the OpenAPI YAML for your own client generation.

## Delete webhook

> Delete a specific webhook by ID

```json
{"openapi":"3.0.0","info":{"title":"Immuta Data Marketplace","version":"1.0"},"tags":[{"name":"Notification","description":"APIs for managing notifications"}],"servers":[{"url":"https://{global-segment}.api.immutacloud.com/marketplace","description":"Marketplace API Endpoint","variables":{"global-segment":{"default":"na","enum":["na","eu","ap"],"description":"Marketplace API global segment"}}}],"security":[{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"scheme":"bearer","bearerFormat":"JWT","type":"http"}}},"paths":{"/api/notification/webhook/{id}":{"delete":{"description":"Delete a specific webhook by ID","summary":"Delete webhook","operationId":"deleteWebhook","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":""}},"tags":["Notification"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.immuta.com/saas/request/notifications/how-to-guides/manage-webhooks.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
