ActionSlackUpdated September 2026
How do I create a Slack Canvas?
Short answer: You can create canvas in Slack by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the Slack Create Canvas action to a workflow, map its 3 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.
Inputs
The fields this action accepts.
Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.
| Field | Type | Required | Description |
|---|---|---|---|
Canvas Title title | string | Required | Title shown at the top of the Canvas. |
Content (Markdown) markdown | string | Required | Canvas body in Markdown. |
Share to Channel (optional) channel | string | Optional | Slack channel ID (starts with C for public, G for private group, D for DM). Find via List Channels. Not the channel name with #. |
Sample request
{"title": "{{trigger.title}}","markdown": "{{trigger.markdown}}","channel": "e.g. C0123456789"}
Returns
{"ok": true,"raw": {},"canvas_id": "F0123ABC"}
Use these fields in downstream nodes for routing, logging, or error handling.
Triggered by
Apps that pair well as the trigger for Create Canvas.
Any of these apps can fire this action as part of a workflow.
FAQ
Questions about Create Canvas.
What does the Create Canvas action do in Slack?
Creates a new Slack Canvas, a rich-text doc that can be shared in channels. Useful for templated onboarding docs or recurring meeting agendas.
What inputs does Create Canvas require?
Required: Canvas Title, Content (Markdown). Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if Slack returns an error?
The run history shows the failed step with its input and the error message Slack returned, so you can fix the input and run the workflow again. Automatic retries are built into HTTP steps only, where you can also set your own retry count and delay.
Does Create Canvas support batch operations?
Run Create Canvas inside a loop to process each item in an array. TinyCommand does not throttle calls for you, so for large arrays add a Delay step if you need to stay within Slack's rate limits.
More actions
Other Slack actions.
Action
Raw API Request
Makes a raw authenticated call to any Slack Web API method. The escape hatch for endpoints not yet covered by a dedicated action.
ActionAdd Reaction
Adds an emoji reaction to a Slack message. Lightweight ack mechanism for bots, or used to seed a reaction-voting message.
ActionArchive Channel
Archives a Slack channel. Members are removed and the channel becomes read-only but recoverable; the soft alternative to deleting.
ActionCancel Scheduled Message
Cancels a previously-scheduled Slack message before it's sent. Use it when conditions change after a Schedule Message action ran.
ActionCreate Channel
Creates a new Slack channel with a name and is_private flag. Used for templated channel provisioning (per-customer support channel, per-incident war room).
ActionDelete File
Permanently deletes a file from Slack by file ID. Used for cleanup or DLP-driven removal of sensitive content.