Update integration

View as MarkdownOpen in Claude
Changes the URL of the existing Slack or Discord destination of that type; never creates one, never deletes, never sends a test message and never touches the channel flag. Answers **200** with the resource. A configuration with no destination of that type answers **404** and nothing is created - create it with "Create integration". `PUT` is an alias of `PATCH`. `{integration_type}` (path, default `slack`) is `slack` or `discord`. **Body** (JSON): - `url` (string, required, max 2048): a complete `https://hooks.slack.com/services/...` or `https://discord.com/api/webhooks/...` URL matching `{integration_type}`. Always required - an empty, missing or masked URL is invalid input, never a deletion command (use "Delete integration" for that). The complete URL is returned on ordinary reads too (a conscious exception); the MCP answers only a mask. Requires a full-access token (read-only tokens answer 403), permission to edit notification configurations and the organization's channel permission for that type; without them the configuration answers 404. Body validation runs before authorization: a foreign configuration with an invalid or missing `url` answers 422; only a foreign configuration with a valid `url` answers 404. Never run this request against production with a real webhook URL - use a fictional one. **Path variables** - `integration_type`: Destination type: `slack` or `discord`.

Authentication

AuthorizationBearer

Personal access token created in the Modular DS dashboard; read-only tokens can only call GET endpoints.

Path parameters

alert_idstringRequired
integration_typestringRequired

Response

200 - Integration URL changed

dataobjectOptional
jsonapiobjectOptional

Errors

404
Not Found Error
422
Unprocessable Entity Error