---
title: "Update Alert Integration"
method: PUT
path: "/v4/organizations/{organizationId}/projects/{projectId}/alertIntegrations/{alertIntegrationId}"
tags: ["Alert Integration"]
---

# Update Alert Integration

`PUT /v4/organizations/{organizationId}/projects/{projectId}/alertIntegrations/{alertIntegrationId}`

Update the details of the given alert integration.

In order to access this endpoint, the provided API key must have at least one of the following roles:
- Organization Owner
- Project Owner
- Project Manager

To learn more, see [Organization, Project, and Database Access Overview](https://docs.couchbase.com/cloud/organizations/organization-projects-overview.html).

## Request body

- UpdateAlertRequest
  - `kind` 'webhook' | 'slack' | 'teams' — Type of alert integration. If provided, must match the existing integration's kind. This field cannot be used to change the integration kind.
  - `name` string, nullable — Name of the alert integration (up to 1024 characters).
  - `enabled` boolean — Enables or disables the integration.
  - `config` union
    - object
      - `webhook` RequestWebhook, required
        - `method` 'POST' | 'PUT', required — Type of API method to be sent when alert is triggered, either 'POST' or 'PUT'.
        - `url` string, uri, required — The base URL of the webhook integration.
        - `token` string — The bearer authentication token is a third-party token that you set for the alert notifications sent through the webhook integration.
        - `basicAuth` BasicAuth
          - `user` string, required — Authentication username of the alert API (up to 1024 characters).
          - `password` string, required — Authentication password of the alert API (up to 1024 characters).
        - `headers` object
        - `exclude` Exclude
          - `clusters` string[] — The list of cluster IDs of the clusters to be excluded from the alert integration.
          - `appServices` string[] — The list of app service IDs of the app services to be excluded from the alert integration.
        - `customPayloads` object
      - `slack` UpdateRequestSlack
        - `botToken` string, nullable
        - `channel` string, nullable
        - `clusterChannelMappings` object
        - `appServiceChannelMappings` object
        - `clusterWebhookChannelMappings` object
        - `appServiceWebhookChannelMappings` object
        - `channelWebhookUrlMappings` object
        - `customPayloads` object
      - `teams` UpdateRequestTeams
        - `webhookUrlMappings` object
        - `clusterWebhookMappings` object
        - `appServiceWebhookMappings` object
        - `customPayloads` object
    - object
      - `webhook` RequestWebhook
        - `method` 'POST' | 'PUT', required — Type of API method to be sent when alert is triggered, either 'POST' or 'PUT'.
        - `url` string, uri, required — The base URL of the webhook integration.
        - `token` string — The bearer authentication token is a third-party token that you set for the alert notifications sent through the webhook integration.
        - `basicAuth` BasicAuth
          - `user` string, required — Authentication username of the alert API (up to 1024 characters).
          - `password` string, required — Authentication password of the alert API (up to 1024 characters).
        - `headers` object
        - `exclude` Exclude
          - `clusters` string[] — The list of cluster IDs of the clusters to be excluded from the alert integration.
          - `appServices` string[] — The list of app service IDs of the app services to be excluded from the alert integration.
        - `customPayloads` object
      - `slack` UpdateRequestSlack, required
        - `botToken` string, nullable
        - `channel` string, nullable
        - `clusterChannelMappings` object
        - `appServiceChannelMappings` object
        - `clusterWebhookChannelMappings` object
        - `appServiceWebhookChannelMappings` object
        - `channelWebhookUrlMappings` object
        - `customPayloads` object
      - `teams` UpdateRequestTeams
        - `webhookUrlMappings` object
        - `clusterWebhookMappings` object
        - `appServiceWebhookMappings` object
        - `customPayloads` object
    - object
      - `webhook` RequestWebhook
        - `method` 'POST' | 'PUT', required — Type of API method to be sent when alert is triggered, either 'POST' or 'PUT'.
        - `url` string, uri, required — The base URL of the webhook integration.
        - `token` string — The bearer authentication token is a third-party token that you set for the alert notifications sent through the webhook integration.
        - `basicAuth` BasicAuth
          - `user` string, required — Authentication username of the alert API (up to 1024 characters).
          - `password` string, required — Authentication password of the alert API (up to 1024 characters).
        - `headers` object
        - `exclude` Exclude
          - `clusters` string[] — The list of cluster IDs of the clusters to be excluded from the alert integration.
          - `appServices` string[] — The list of app service IDs of the app services to be excluded from the alert integration.
        - `customPayloads` object
      - `slack` UpdateRequestSlack
        - `botToken` string, nullable
        - `channel` string, nullable
        - `clusterChannelMappings` object
        - `appServiceChannelMappings` object
        - `clusterWebhookChannelMappings` object
        - `appServiceWebhookChannelMappings` object
        - `channelWebhookUrlMappings` object
        - `customPayloads` object
      - `teams` UpdateRequestTeams, required
        - `webhookUrlMappings` object
        - `clusterWebhookMappings` object
        - `appServiceWebhookMappings` object
        - `customPayloads` object

## Response `200`

Successfully updated the metadata for the alert integration.

- GetAlertResponse
  - `id` string, uuid, required — The ID of the alert integration created.
  - `name` string, required — Name of the alert integration (up to 1024 characters).
  - `tenantId` string, uuid, required — The tenant ID to which the alert integration belongs to.
  - `projectId` string, uuid — The project ID to which the alert integration belongs to.
  - `kind` 'webhook' | 'slack' | 'teams', required — Type of alert integration.
  - `configKey` string, required — ConfigKey is the key that was used to store the alert integration config and secrets.
  - `status` string, required — Status is either healthy or unhealthy showing if the integration is functional or not.
  - `enabled` boolean, required — Enables or disables the integration. Only 1 integration can be active at any time.
  - `config` union, required
    - object
      - `webhook` ResponseWebhook, required
        - `method` 'POST' | 'PUT', required — The API method to use when sending alert notifications to the integrated service. Either 'POST' or 'PUT'.
        - `url` string, uri, required — The base URL of the webhook integration.
        - `headers` object
        - `exclude` Exclude
          - `clusters` string[] — The list of cluster IDs of the clusters to be excluded from the alert integration.
          - `appServices` string[] — The list of app service IDs of the app services to be excluded from the alert integration.
        - `customPayloads` object
      - `slack` ResponseSlack — Slack configuration returned on an alert integration read. Secret-bearing fields (bot token, channel webhook URL mappings) are omitted; use `/alertIntegrations/channels` to list channels.
        - `channel` string — Default Slack channel name.
        - `clusterChannelMappings` object — Cluster ID to Slack channel mappings.
        - `appServiceChannelMappings` object — App Service ID to Slack channel mappings.
        - `clusterWebhookChannelMappings` object — Cluster ID to Slack webhook channel mappings.
        - `appServiceWebhookChannelMappings` object — App Service ID to Slack webhook channel mappings.
        - `customPayloads` object
      - `teams` ResponseTeams — Teams configuration returned on an alert integration read. Secret-bearing fields (Teams incoming webhook URLs) are omitted.
        - `clusterWebhookMappings` object — Cluster ID to route key mappings.
        - `appServiceWebhookMappings` object — App Service ID to route key mappings.
        - `customPayloads` object
    - object
      - `webhook` ResponseWebhook
        - `method` 'POST' | 'PUT', required — The API method to use when sending alert notifications to the integrated service. Either 'POST' or 'PUT'.
        - `url` string, uri, required — The base URL of the webhook integration.
        - `headers` object
        - `exclude` Exclude
          - `clusters` string[] — The list of cluster IDs of the clusters to be excluded from the alert integration.
          - `appServices` string[] — The list of app service IDs of the app services to be excluded from the alert integration.
        - `customPayloads` object
      - `slack` ResponseSlack, required — Slack configuration returned on an alert integration read. Secret-bearing fields (bot token, channel webhook URL mappings) are omitted; use `/alertIntegrations/channels` to list channels.
        - `channel` string — Default Slack channel name.
        - `clusterChannelMappings` object — Cluster ID to Slack channel mappings.
        - `appServiceChannelMappings` object — App Service ID to Slack channel mappings.
        - `clusterWebhookChannelMappings` object — Cluster ID to Slack webhook channel mappings.
        - `appServiceWebhookChannelMappings` object — App Service ID to Slack webhook channel mappings.
        - `customPayloads` object
      - `teams` ResponseTeams — Teams configuration returned on an alert integration read. Secret-bearing fields (Teams incoming webhook URLs) are omitted.
        - `clusterWebhookMappings` object — Cluster ID to route key mappings.
        - `appServiceWebhookMappings` object — App Service ID to route key mappings.
        - `customPayloads` object
    - object
      - `webhook` ResponseWebhook
        - `method` 'POST' | 'PUT', required — The API method to use when sending alert notifications to the integrated service. Either 'POST' or 'PUT'.
        - `url` string, uri, required — The base URL of the webhook integration.
        - `headers` object
        - `exclude` Exclude
          - `clusters` string[] — The list of cluster IDs of the clusters to be excluded from the alert integration.
          - `appServices` string[] — The list of app service IDs of the app services to be excluded from the alert integration.
        - `customPayloads` object
      - `slack` ResponseSlack — Slack configuration returned on an alert integration read. Secret-bearing fields (bot token, channel webhook URL mappings) are omitted; use `/alertIntegrations/channels` to list channels.
        - `channel` string — Default Slack channel name.
        - `clusterChannelMappings` object — Cluster ID to Slack channel mappings.
        - `appServiceChannelMappings` object — App Service ID to Slack channel mappings.
        - `clusterWebhookChannelMappings` object — Cluster ID to Slack webhook channel mappings.
        - `appServiceWebhookChannelMappings` object — App Service ID to Slack webhook channel mappings.
        - `customPayloads` object
      - `teams` ResponseTeams, required — Teams configuration returned on an alert integration read. Secret-bearing fields (Teams incoming webhook URLs) are omitted.
        - `clusterWebhookMappings` object — Cluster ID to route key mappings.
        - `appServiceWebhookMappings` object — App Service ID to route key mappings.
        - `customPayloads` object
  - `audit` CouchbaseAuditData, required
    - `createdBy` string, required — The user who created the resource; this will be a UUID4 ID for standard users and will be a string such as "internal-support" for internal Couchbase support users.
    - `createdAt` string, date-time, required — The RFC3339 timestamp associated with when the resource was initially created.
    - `modifiedBy` string, required — The user who last modified the resource; this will be a UUID4 ID for standard users and wilmal be a string such as "internal-support" for internal Couchbase support users.
    - `modifiedAt` string, date-time, required — The RFC3339 timestamp associated with when the resource was last modified.
    - `version` integer, required — The version of the document. This value is incremented each time the resource is modified.

## Other responses

- `400` — Returned when we are unable to decode the recevied payload.
- `403` — The client does not have the necessary permissions to access this resource.
- `404` — The requested resource was not found.
- `409` — Returned when there is a conflict with the current state of a resource.
- `412` — Returned when there is a mismatch with the Etag version.
- `422` — Request validation error.
- `429` — Returned when the client exceeds the rate limit for the given APIKey.
- `500` — An unexpected error occurred in the server while processing this request.
- `504` — The server did not get a response in time from the upstream server in order to complete the request.

---

[API](https://skmtc.net/couchbase/apis/couchbase-capella-management-api.md) · [All operations](https://skmtc.net/couchbase/apis/couchbase-capella-management-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/couchbase/couchbase-capella-management-api/versions/e67df5d1f74e/schema)
