---
title: "PUT /public/monitoring/v3/integration"
method: PUT
path: "/public/monitoring/v3/integration"
tags: ["cli_integration_monitoring_v3_20"]
---

# PUT /public/monitoring/v3/integration

`PUT /public/monitoring/v3/integration`

## Request

- Base URL: `https://developers.conduktor.io` (the document declares no server; this is the origin it was published from)
- URL: `https://developers.conduktor.io/public/monitoring/v3/integration`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/conduktor/apis/conduktor-console-api/docs/public/monitoring/v3/integration/put.ts> (a function with typed inputs; its response is checked against the schema)

Create or update a Integration

## Query parameters

- `dryMode` boolean

## Request body

- IntegrationResourceV3
  - `apiVersion` string, required
  - `kind` 'Integration', required
  - `metadata` IntegrationMetadata, required
    - `name` 'Email' | 'Slack' | 'Teams' | 'Webhook', required
  - `spec` IntegrationSpec, required
    - `config` union
      - Email
        - `smtpServerUrl` string, required
        - `enableTls` boolean, required
        - `ignoreUntrustedCertificate` boolean, required
        - `senderEmail` string, required
        - `username` string, required
        - `password` string, required
        - `tlsMode` 'StartTls' | 'Tls'
      - Slack
        - `token` string, required

## Response `200`

- IntegrationApplyResultV3
  - `resource` IntegrationResourceV3, required
    - `apiVersion` string, required
    - `kind` 'Integration', required
    - `metadata` IntegrationMetadata, required
      - `name` 'Email' | 'Slack' | 'Teams' | 'Webhook', required
    - `spec` IntegrationSpec, required
      - `config` union
        - Email
          - `smtpServerUrl` string, required
          - `enableTls` boolean, required
          - `ignoreUntrustedCertificate` boolean, required
          - `senderEmail` string, required
          - `username` string, required
          - `password` string, required
          - `tlsMode` 'StartTls' | 'Tls'
        - Slack
          - `token` string, required
  - `upsertResult` 'Created' | 'Updated' | 'NotChanged', required

## Other responses

- `400`: The request is not valid
- `401`: The user is not authenticated
- `403`: The user doesn't have sufficient privilege to do this operation
- `404`: No integration with this technical id exists
- `409`: The request does not match one of the business rules
- `500`: An unexpected error occurred in the server

---

[API](https://skmtc.dev/conduktor/apis/conduktor-console-api.md) - [All operations](https://skmtc.dev/conduktor/apis/conduktor-console-api/llms.txt) - [OpenAPI document](https://skmtc.dev/conduktor/apis/conduktor-console-api/revisions/24750c294805?raw)
