

n8n + 2Slides: Automate Presentation Workflows for Free
n8n is the open-source, self-hosted alternative to Zapier — and it works perfectly with the 2Slides API. This guide shows you how to build automated presentation workflows without paying for a commercial automation platform.
Why n8n + 2Slides?
| Feature | n8n | Zapier |
|---|---|---|
| Cost | Free (self-hosted) | $20-60+/month |
| Hosting | Self-hosted or cloud | Cloud only |
| Data privacy | Your server, your data | Third-party |
| Complexity | Unlimited workflows | Plan-based limits |
| Open source | Yes (Apache 2.0) | No |
For teams already running n8n, adding 2Slides presentation automation is straightforward.
Setup
1. Install n8n (if not already)
# Docker (recommended) docker run -it --rm --name n8n -p 5678:5678 n8nio/n8n # Or npm npm install n8n -g && n8n start
2. Create a New Workflow
In the n8n editor, create a new workflow with these nodes:
3. Add an HTTP Request Node
Configure the HTTP Request node to call 2Slides:
- Method: POST
- URL:
https://2slides.com/api/v1/slides/generate - Authentication: Generic Credential Type → Header Auth
- Name:
Authorization - Value:
Bearer sk-2slides-your-api-key
- Name:
- Body Content Type: JSON
- Body:
{ "userInput": "{{ $json.topic }}", "themeId": "your-theme-id", "mode": "sync", "responseLanguage": "en", "resolution": "2K" }
4. Add Trigger
Choose what starts the workflow:
Schedule Trigger — for recurring reports:
- Interval: Every 1 week
- Day: Monday
- Hour: 9
Webhook Trigger — for on-demand generation:
- Create a webhook URL
- Call it from your app or Slack
Gmail/Slack Trigger — for event-based:
- Monitor a channel or inbox for presentation requests
5. Add Delivery Node
Send the generated slides to your team:
- Slack Node: Post message with download URL
- Gmail Node: Send email with link
- Google Drive Node: Upload to shared folder
Example Workflows
Weekly Team Update
Schedule (Monday 9 AM) → HTTP Request (2Slides API: generate weekly report slides) → Slack (post download link to #team-updates)
Document-to-Slides on Upload
Google Drive Trigger (new file in folder) → HTTP Request (2Slides API: create-pdf-slides) → Wait (poll for job completion) → Gmail (send slides to uploader)
CRM Deal → Pitch Deck
HubSpot Trigger (deal stage = Proposal) → Get Deal Data (HubSpot API) → HTTP Request (2Slides API: generate pitch deck) → HubSpot (attach slides to deal) → Slack (notify sales rep)
Advanced: Async Generation with Polling
For longer generation jobs, use async mode with a polling loop:
HTTP Request (start job, mode: async) → Wait (5 seconds) → HTTP Request (check job status) → IF (status != 'success') → Loop back to Wait → ELSE → Process result (deliver slides)
Tips
- Store your API key as n8n Credential — not hardcoded in nodes
- Use expressions to dynamically build the presentation topic from trigger data
- Add error handling — use the n8n Error Trigger node to catch failures
- Monitor credit usage — add a check before generation to ensure sufficient credits
Frequently Asked Questions
Can n8n handle the async polling pattern?
Yes — use the Loop/Wait nodes to implement polling. n8n supports conditional loops natively.
Is n8n free for this use case?
Self-hosted n8n is completely free. n8n Cloud has a free tier with 5 active workflows.
Can I run n8n on my server alongside other tools?
Yes — n8n runs as a Docker container and coexists with any other services on your server.
Automate slides for free — connect n8n to 2Slides API and build your first workflow in minutes.
About 2Slides
Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.
Try For Free