Automate Slack Image Uploads to S3 with n8n Workflow

This n8n workflow seamlessly automates the entire process of uploading images from Slack to an S3 bucket. It solves the common pain of manual file downloads and uploads, saving you hours and eliminating upload errors with dynamic Slack modals and automated file handling.
Webhook
Set
Switch
+9
Workflow Identifier: 1905
NODES in Use: Webhook, Set, Switch, RespondToWebhook, HttpRequest, SplitOut, SplitInBatches, NoOp, Aggregate, If, S3, Slack
Automate Slack image uploads with n8n and S3

Press CTRL+F5 if the workflow didn't load.

Learn how to Build this Workflow with AI:

What this workflow does

This workflow automates uploading image files from Slack to an AWS S3 bucket.
It solves the problem of slow and error-prone manual uploads by automatically downloading files from Slack and placing them in the right folders on S3.
Users get fast and organized file uploads with confirmation messages inside Slack.

The automation listens for Slack events, opens interactive modals to ask users about folder choices,
downloads files one by one, uploads them to S3, and reports results back to Slack channels.


Who should use this workflow

Teams that share many image files in Slack and need to save them regularly to an S3 bucket.
Anyone wanting to cut down on manual downloads, renaming, and uploading from Slack file shares.

This workflow is great for digital agencies, marketing teams, or remote groups handling client files.
It helps avoid lost or misnamed files and saves hours of repetitive work.


Tools and services used

  • Slack API: For receiving events, opening modals, and downloading files securely.
  • Amazon S3: To store uploaded image files in organized folders.
  • n8n automation platform: To chain nodes for webhook listening, HTTP requests, file processing, and S3 uploading.

How the workflow works: Inputs, Process, and Outputs

Inputs

  • Slack event webhooks triggered by user interactions and file uploads.
  • User selections from Slack modals for folder choice and new folder names.
  • Files uploaded inside Slack modal forms.

Processing steps

  • Receive Slack webhooks with event data.
  • Parse the payload to extract interaction type and user input.
  • Route messages based on interaction type using Switch nodes.
  • Respond immediately to Slack to prevent retries.
  • Open modals prompting the user to select folder options.
  • Open further modals based on folder choice: either create a new folder or select existing.
  • Split file list to process each file one by one.
  • Download files from Slack’s private URLs with authentication.
  • Upload files to the appropriate folder in the S3 bucket.
  • Check upload status and generate success or failure messages.
  • Aggregate all responses for a summary report.
  • Send a Slack notification with links to uploaded files.
  • Close the Slack modal gracefully.

Outputs

  • Files saved in S3 folders, named as per Slack submission.
  • Slack channel messages showing links or error alerts.
  • Closed Slack modal interface signaling end of interaction.


Beginner step-by-step: How to use this workflow in n8n

1. Import the workflow

  1. Click the Download button on this page to get the workflow JSON file.
  2. Inside the n8n editor, click on the top-right menu and select Import from File.
  3. Choose the downloaded file to add the workflow.

2. Add your credentials

  1. Open the imported workflow and go to Webhook node to check the URL.
  2. Add your Slack API credentials under Credentials, including OAuth token with required scopes.
  3. Set up AWS S3 credentials with access key, secret, and bucket name inside the S3 node.

3. Configure IDs and channels

  1. Update Slack channel IDs in the Slack post message node to point to the correct workspace channel.
  2. Fill in folder names or IDs if needed for existing folders inside the modal payloads.

4. Test and activate

  1. Trigger the workflow by interacting with Slack to ensure files upload correctly.
  2. Check that files appear in your S3 bucket and Slack receives notification messages.
  3. When ready, activate the workflow by toggling the active switch in n8n.

If planning to self host n8n, consider resources at buldrr.com/hosting.


Input and Output details

Input: Slack sends events when users interact with file upload modals or selectors.

Output: Files uploaded to specified S3 folders, plus Slack messages summarizing upload status.


Edge cases and failures

  • Slack modal fails to open if the trigger_id expires or API token is invalid.
  • File download from Slack private URLs may fail with 404 or unauthorized if OAuth token is missing.
  • S3 upload may fail due to wrong bucket name or invalid AWS credentials.
  • Large batch uploads without SplitInBatches control can cause throttling.

Always check tokens and credentials before running.


Customization ideas

  • Change accepted file types by editing filetypes inside modal JSON payloads for formats like GIF or TIFF.
  • Modify the S3 bucket or folder paths inside the S3 node to support multiple projects.
  • Update Slack channel destination inside the Slack post node to notify different teams.
  • Adjust max file size limits in modal definitions to control storage usage.


Summary of benefits and results

✓ Automates slow manual Slack image uploads to AWS S3.
✓ Saves hours of repetitive work and prevents naming errors.
✓ Gives users instant Slack feedback with upload success or failure.
✓ Handles multiple files with batch processing to avoid overload.
✓ Keeps files well organized in folders per user selections.
→ Reduces friction in file management inside Slack workspace.
→ Ensures quicker project deliveries without upload delays.


Automate Slack image uploads with n8n and S3

Visit through Desktop to Interact with the Workflow.

Frequently Asked Questions

Slack event webhooks triggered by user interactions with modals or file uploads start the workflow.
Yes, it splits the file list and processes files in batches to handle multiple uploads efficiently.
Slack OAuth token with files:read permission and AWS S3 access keys with permission to upload files are required.
The workflow detects upload failure and sends error messages back to Slack for user awareness.
Author
Written By
Ritu Sanjali

Related Workflows

Automate Twist Channel Creation and Messaging with n8n

This workflow automates creating and updating a channel in Twist and sending a personalized message to specific users. It eliminates manual setup errors and saves time managing Twist communications.

Automate Ideogram Image Generation with Google Sheets & Gmail

This workflow automates graphic design image generation via Ideogram AI, storing image data in Google Sheets and Google Drive, with email alerts via Gmail. It saves designers hours by automating image creation, remixing, review, and record-keeping.

Automate IT Support with Slack and OpenAI in n8n

Streamline IT support by automating Slack message handling using n8n and OpenAI. This workflow handles Slack DMs, filters bots, queries a Confluence knowledge base, and delivers AI-generated responses, improving support efficiency and response time.

Automate Crypto Analysis with CoinMarketCap & n8n AI Agent

Discover how this unique n8n workflow leverages CoinMarketCap’s multi-agent AI to deliver precise, real-time cryptocurrency insights directly via Telegram. Manage crypto data analysis efficiently with automated multi-source API integration.

Automate Gumroad to Beehiiv Subscriber Sync with n8n

Learn how to automatically add new Gumroad sales customers as Beehiiv newsletter subscribers using n8n automation. This workflow saves time by syncing sales data to Google Sheets CRM and notifying your Telegram channel instantly.

Generate On-Brand Blog Articles Using n8n and OpenAI

This workflow automates the creation of on-brand blog articles by analyzing existing company content using n8n and OpenAI. It extracts article structures and brand voice to produce consistent draft articles, saving significant content creation time.
1:1 Free Strategy Session
Your competitors are already automating. Are you still paying for it manually?

Do you want to adopt AI Automation?

Every hour your team does repetitive work, you're burning real money.
While you wait, faster businesses are cutting costs and moving quicker.
AI and automations aren't the future anymore — they're the present.

Book a live 1-on-1 session where we show you exactly which of your daily tasks can be automated — and what it’s costing you not to.