# Upload images to an S3 bucket with Slack: n8n workflow template

> Started by another system calling it, and works across S3 and Slack. 22 steps, 4 branches, 1 loop or waits: large, and worth reading before you trust it...

Source: https://millionrounds.com/workflow/upload-images-to-an-s3-bucket-with-slack (Millionrounds; every figure on the page links to its filing or article)

[Automation library](https://millionrounds.com/workflows) · [Alerts and monitoring](https://millionrounds.com/workflows?category=Alerts+and+monitoring#library)

# Upload images to an S3 bucket with Slack

Started by another system calling it, and works across S3 and Slack. 22 steps, 4 branches, 1 loop or waits: large, and worth reading before you trust it with anything live.

Large

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fupload-images-to-an-s3-bucket-with-slack)

**22 steps** Large: read it before trusting it with anything live

**4** Branches: places the flow splits

**1** Loop or waits

**2** Services it connects to

## The flow

Starts it 4 Logic 12 Service 6

The steps in the order they run, from what starts it.

- 1 **Webhook** Webhook *Starts it*
- 2 **Parse Webhook** Set *Logic*
- 3 **Route Message** Switch *Logic*
- 4 **Respond to Slack Webhook - Success** Respond To Webhook *Starts it*
- 5 **Respond to Slack Webhook - No Action** Respond To Webhook *Starts it*
- 6 **Close Modal Popup** Respond To Webhook *Starts it*
- 7 **Idea Selector Modal** Http Request *Service*
- 8 **Route Message1** Switch *Logic*
- 9 **Route Action** Switch *Logic*
- 10 **Create Folder** Http Request *Service*
- 11 **Select Folder** Http Request *Service*
- 12 **Split Out Files** Split Out *Logic*
- 13 **Loop Over Items** Split In Batches *Logic*
- 14 **No Operation, do nothing** No Op *Logic*
- 15 **Download File Binary** Http Request *Service*
- 16 **Aggregate** Aggregate *Logic*
- 17 **Upload to S3 Bucket** S3 *Service*
- 18 **Post Image to Channel** Slack *Service*
- 19 **Check if uploaded successfully** If *Logic*
- 20 **Success Response** Set *Logic*
- 21 **Failure Response** Set *Logic*
- 22 **move on to next** No Op *Logic*

## How it's built

- **Starts on:** Another system calling it
- **Steps:** 22, with 4 branches, 1 loop or waits
- **Size:** Large: read it before trusting it with anything live
- **Connects to:** S3, Slack
- **Model:** None. This is plumbing, not judgement

## Questions

What does it need to run?

An n8n account, plus your own S3 and Slack accounts. You connect your own accounts after importing it; none are included.

What starts it?

It starts on another system calling it.

Does it use AI?

No. Every step is fixed logic or a call to a service, so it does the same thing every time.

How long does it take to set up?

Take your time. At 22 steps it is large: read it before trusting it with anything live.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

**Before you run it**

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 22 steps before you point it at anything that matters.

## Run it in n8n

- **Create your n8n account** Free to start. n8n is where the workflow runs. [Create an n8n account ↗](https://millionrounds.com/n8n)
- **Download the workflow** Free with a Millionrounds account. [Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fupload-images-to-an-s3-bucket-with-slack)
- **Paste it into n8n** Open a new workflow in n8n and paste. Then connect your own accounts.

Stored with the author's traces removed: canvas notes, instance identifiers, saved credential names and any live document they had left behind.

## Connects to

Each opens the other workflows that use it.

[S3](https://millionrounds.com/workflows?service=S3#library)[Slack](https://millionrounds.com/workflows?service=Slack#library)

## Workflows like it

Also alerts and monitoring, with the same services where possible, closest in size first.

- [**Automated Customer Onboarding Sequence with HubSpot** 22 steps · Email, HubSpot](https://millionrounds.com/workflow/automated-customer-onboarding-sequence-with-hubspot)
- [**Automated workflow backups to GitHub with Slack** 22 steps · GitHub, Slack](https://millionrounds.com/workflow/automated-workflow-backups-to-github-with-slack)
- [**Gate Telegram bot access with Stripe and Slack** 22 steps · Slack, Telegram](https://millionrounds.com/workflow/gate-telegram-bot-access-with-stripe-and-slack)
- [**Monitor empty successful workflows with Data Tables and Slack** 22 steps · Slack, n8n data table](https://millionrounds.com/workflow/monitor-empty-successful-workflows-with-data-tables-and-slac)
- [**Monitor workflow heartbeats with Google Sheets and Slack** 22 steps · Google Sheets, Slack](https://millionrounds.com/workflow/monitor-workflow-heartbeats-with-google-sheets-and-slack)
- [**Predict transformer overload risk and send alerts** 22 steps · Email, Google Sheets](https://millionrounds.com/workflow/predict-transformer-overload-risk-and-send-alerts)
