Slack
SLACK_EDIT_CANVAS
Edits a Slack Canvas with granular control over content placement. Supports replace, insert (before/after/start/end) operations for flexible content management.
Remote slack
Other tools also called SLACK_EDIT_CANVAS?
See providers with this name
Input Schema
{
"type": "object",
"properties": {
"canvas_id": {
"type": "string",
"description": "The unique identifier of the canvas to edit\nExample: \"F01234ABCDE\""
},
"operation": {
"enum": [
"replace",
"insert_after",
"insert_before",
"insert_at_start",
"insert_at_end",
"delete"
],
"type": "string",
"default": "replace",
"description": "Type of edit operation: 'replace' (replaces entire canvas or specific section if section_id provided), 'insert_after' (inserts content after section_id), 'insert_before' (inserts content before section_id), 'insert_at_start' (prepends content to beginning), 'insert_at_end' (appends content to end), 'delete' (deletes specific section by section_id)"
},
"section_id": {
"type": [
"string",
"null"
],
"default": null,
"description": "Section ID for targeted operations. Required for: 'insert_after', 'insert_before', 'delete'. Optional for: 'replace' (if omitted, replaces entire canvas). Not used for: 'insert_at_start', 'insert_at_end'. Use canvases.sections.lookup method to get section IDs from existing canvas.\nExamples:\n \"temp:C:VXX8e648e6984e441c6aa8c61173\"\n \"section-abc-123\""
},
"document_content": {
"anyOf": [
{
"type": "object",
"properties": {},
"additionalProperties": true
},
{
"type": "null"
}
],
"default": null,
"description": "The content to add/replace in Slack's document format. Required for all operations except 'delete'. Use canvases.sections.lookup to find section IDs for targeted operations.\nExample: {\"markdown\":\"# New Content\\n\\nContent here\",\"type\":\"markdown\"}"
}
}
}