---
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}`

## Request

- Base URL: `https://cloudapi.cloud.couchbase.com`
- URL: `https://cloudapi.cloud.couchbase.com/v4/organizations/{organizationId}/projects/{projectId}/alertIntegrations/{alertIntegrationId}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/couchbase/apis/couchbase-capella-management-api/docs/v4/organizations/:organizationId/projects/:projectId/alertIntegrations/:alertIntegrationId/put.ts> (a function with typed inputs; its response is checked against the schema)

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 will 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.

## Changes

- **2026-08-06** `e67df5d1f74e`: 1 breaking, 13 info
  - removed the success response with the status `204`
  - added the new optional request property `config/slack`
  - added the new optional request property `config/teams`
  - added the new optional request property `config/webhook/customPayloads`
  - …10 more

[Operation history](https://skmtc.dev/couchbase/apis/couchbase-capella-management-api/changes/v4/organizations/:organizationId/projects/:projectId/alertIntegrations/:alertIntegrationId/put.md)

---

[API](https://skmtc.dev/couchbase/apis/couchbase-capella-management-api.md) - [All operations](https://skmtc.dev/couchbase/apis/couchbase-capella-management-api/llms.txt) - [OpenAPI document](https://skmtc.dev/couchbase/apis/couchbase-capella-management-api/revisions/a5e88bcf71cb?raw)
