Home › Integrations › Zapier › Slack messages to deck
Twistly + Zapier · Workflow
Beta
Turn a Slack message into a PowerPoint deck, automatically
Post a request in a Slack channel, and Twistly builds an editable .pptx deck from it, then replies in the same channel with the file.
Zapier: a paid plan (Professional or higher), because Free runs two-step Zaps only. Twistly: a Pro or Team plan, for the API key. The Twistly Zapier app is in Beta.
Before / after
What goes in, what comes out
One Slack request and the deck Twistly built from it. Download the file and click into any text box.
Slack · New message in channel
#deck-requests
Requests only, one message per deck
PR
Priya Raman 10:42
Deck for Thursday’s launch review: Atlas mobile app. Audience: sales leads. Cover what’s new, pricing, the rollout timeline and three customer stories. 6 slides.
The Zap replies in the channel
About three minutes later, with a link to the .pptx.
After · what the Zap sends back
Zap runs · about 3 min
atlas-launch-review.pptx · 6 slides · Tokyo template




How it works
How the Zap runs
Five steps, about three minutes end to end. Step 3 is a deliberate wait: Twistly needs about 90 seconds to build the deck, so Get Presentation must run after it.
01 Trigger · Slack
New Message Posted to Channel
Fires on each new message in the channel you pick.
02 Action · Twistly
Create Presentation From Text
Sends the message text and returns a generation ID.
3 min
03 Wait · Delay
Delay for 3 minutes
Twistly builds the deck in about 90 s. Keep this step.
04 Search · Twistly
Get Presentation
Uses the generation ID from step 2 and returns the .pptx link.
05 Action · Slack
Send Channel Message
Replies in the channel with the deck link.
Who it’s for
Is this Zap for you?
Deck requests already land in Slack, then wait for someone to pick them up. The Zap answers each request with a first draft.
Who it’s for
- Marketing and sales teams running a shared #deck-requests channel.
- Team leads who post the weekly update as a message and want slides from it.
- Small teams without a designer who need a first draft in minutes, not days.
Who it’s not for
- Your channel is a busy discussion, not a request queue. Make the deck from a chat in Claude instead
- You need a deck from a long thread or a document. Paste the text into Text to PPT
- You need a Google Slides file, not .pptx. Open the deck with the free PPT to Google Slides converter
Setup
Set it up in about 5 minutes
One template, two ways to start it. Pick what should make a deck, and everything below changes with it.
Zap template
Generate Twistly presentations from new Slack channel messages
Opens in Zapier with all five steps in place. You only check the fields in steps 1, 2 and 5.
About 5 min
Before you start
- A paid Zapier plan. Free runs two-step Zaps only
- A Twistly Pro or Team plan, for the API key
- Slack connected to Zapier
Step 1 · Trigger
Slack · New Message Posted to Channel
Pick a channel used only for requests, such as #deck-requests. Set “Trigger for Bot Messages?” to No.
Step 2 · Action
Twistly · Create Presentation From Text
Source Text *
Make a 6-slide deck from this request: Text
Swap each purple field for the Slack field of the same name in Zapier’s picker. Ask people to name the topic, audience and key points in the message.
Number of Slides
6
Or leave the count to the request
Template
Tokyo
Steps 3–4 · Preset
Delay 3 minutes, then Get Presentation
Keep as is
Step 5 · Action
Slack · Send Channel Message
Channel
#deck-requests
Message Text: map the File URL from step 4
Zap template
Generate Twistly presentations from new Slack channel messages
Opens in Zapier with all five steps in place. You only check the fields in steps 1, 2 and 5.
About 5 min
Before you start
- A paid Zapier plan. Free runs two-step Zaps only
- A Twistly Pro or Team plan, for the API key
- Slack connected to Zapier
Step 1 · Trigger
Slack · New Reaction Added
Swap the trigger in the template: a deck is made only when someone adds a chosen emoji, such as :bar_chart:, to a message.
Step 2 · Action
Twistly · Create Presentation From Text
Source Text *
Make a 6-slide deck from this message: Message Text
Swap each purple field for the Slack field of the same name in Zapier’s picker. Works in any channel, because only the emoji starts a run.
Number of Slides
6
Or leave the count to the message
Template
Tokyo
Steps 3–4 · Preset
Delay 3 minutes, then Get Presentation
Keep as is
Step 5 · Action
Slack · Send Channel Message
Channel
Channel of the message
Message Text: map the File URL from step 4
Read before you turn it on
Limits and fixes
What a run needs, what it delivers, and how to fix the usual failures.
You’ll need
Zapier Professional plan or higher
Zapier Free runs two-step Zaps only. This one has five.
Twistly Pro or Team plan
The API key that connects Zapier comes with these plans. Each re-run makes a new deck.
Twistly app for Zapier Beta
Fields can still change while it’s in Beta.
Each run
0 s
Create
~90 s
Ready
~3 min
Get
Twistly builds a deck in about 90 s. Step 3 waits 3 minutes, so Get Presentation always finds it ready.
50
Slides at most
Keep Number of Slides at 50 or fewer.
.pptx
Native PowerPoint file
Every title and bullet stays editable.
If something breaks
| Problem | How to avoid it | If it already happened |
|---|---|---|
| Step 3 · DelayGet Presentation returns “processing” | Keep a Delay of 3 minutes between Create and Get. Twistly needs about 90 s. | Lengthen the Delay to 4 minutes and test the Zap again. |
| Step 1 · TriggerThe Zap answers its own messages | Set “Trigger for Bot Messages?” to No, or post the reply to another channel. | Turn the Zap off, fix the trigger, delete the extra decks, then turn it back on. |
| Step 1 · TriggerEvery “thanks” makes a deck | Keep the channel for requests only, or switch to the emoji trigger. | Add a Filter: continue only if the message is longer than 80 characters. |
| Step 2 · CreateShort messages make thin decks | Pin a request format in the channel: topic, audience, key points, slide count. | Post a fuller request as a new message. The Zap builds a new deck. |
| AccountThe Twistly step fails with “unauthorized” | Connect Twistly with the email your Twistly plan is on. | Reconnect Twistly in Zapier under Apps, then replay the failed run. |
| AccountThe daily limit of 100 decks is reached | Each API key starts up to 100 decks every 24 hours. A re-run makes a new deck. | Wait for the 24-hour window to reset. Failed decks don’t count. |
FAQ
Questions
About the Zap, its limits and the file it makes.
Keep going
Where to go next
Your next deck request can answer itself
Set up the Zap once. Twistly replies to every request in the channel with a deck.
Last updated Oct 8, 2026 · Zapier is a trademark of Zapier, Inc.

