Create integration
Authentication
Personal access token created in the Modular DS dashboard; read-only tokens can only call GET endpoints.
Path parameters
Request
Response
201 - Integration created (or replaced)
Personal access token created in the Modular DS dashboard; read-only tokens can only call GET endpoints.
201 - Integration created (or replaced)
Creates the Slack or Discord destination of a notification configuration. When the configuration already has a destination of that type, its URL is replaced instead (the destination keeps its id). Never sends a test message and never switches the channel on - that is slack_channel/discord_channel on “Update configuration”. Answers 201 with the resource either way, with no Location header: a destination has no read route of its own, it is read through “Read configuration” (include=integrations).
Body (JSON):
type (string, required): slack or discord.url (string, required, max 2048): a complete https://hooks.slack.com/services/... URL for slack, or a complete https://discord.com/api/webhooks/... (or discordapp.com) URL for discord. An empty, missing or masked URL answers 422.To change the URL of an existing destination use “Update integration”; to remove it use “Delete integration”. 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 plan channel for that type; without them the configuration answers 404. Body validation runs before authorization: a foreign configuration with an invalid body answers 422, with a valid body 404. Never run this request against production with a real webhook URL - use a fictional one.