Skip to content
ActionSlackUpdated May 2026

How do I upload a file to Slack?

Short answer: Drop the "SlackUpload File" action anywhere in your workflow, map the inputs from upstream nodes, and publish.

Inputs

The fields this action accepts.

Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.

FieldTypeRequiredDescription
Channel IDs
channels
stringRequiredComma-separated channel IDs to share the file in
File Content
content
stringRequiredText content of the file. Use this for text-based files.
Filename
filename
stringOptionalName of the file
File Type
filetype
stringOptionalSlack file type identifier (e.g. text, csv, json, python, javascript)
Title
title
stringOptionalTitle of the file displayed in Slack
Message
initial_comment
stringOptionalMessage text to accompany the file
Sample request
{
"channels": "C1234567890",
"content": "e.g. File content goes here...",
"filename": "e.g. report.txt",
"filetype": "e.g. text",
"title": "e.g. Monthly Report"
}
Returns
{
"ok": true,
"file": {
"id": "F1234567890",
"name": "report.txt",
"size": 1024,
"title": "Monthly Report",
"filetype": "text",
"mimetype": "text/plain",
"permalink": "https://myteam.slack.com/files/U123/F123/report.txt"
}
}

Use these fields in downstream nodes for routing, logging, or error handling.

Triggered by

Apps that pair well as the trigger for Upload File.

Any of these apps can fire this action as part of a workflow.

FAQ

Questions about Upload File.

What does the Upload File action do in Slack?
Uploads a file to a Slack channel or direct message. Supports any binary content; great for posting auto-generated reports or screenshots.
What inputs does Upload File require?
Required: Channel IDs, File Content. 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 workflow pauses on the failed node, the error message is captured in the run log, and you can retry the run with one click. Auto-retry policies are configurable per workflow with exponential backoff up to 5 attempts.
Does Upload File support batch operations?
Yes. Run Upload File inside a Loop node to process arrays. Tiny Command handles Slack's rate limits automatically so you don't have to throttle manually.
More actions

Other Slack actions.

Send upload file from your workflows.

Triggered by anything in the catalog. Free tier available. No credit card.