Back to Templates

Auto-create Instagram carousel posts from Canva with OpenAI and Blotato

Last update

Last update 7 hours ago

Share


Auto-Create Instagram Carousel Posts from Canva (Webhook → AI Caption → Instagram)

Automatically turn Canva carousel exports into a fully published Instagram post with AI-generated captions.
This workflow receives a webhook payload containing PNG slides (for example from Claude Cowork or a Canva automation), uploads the images, generates an optimized Instagram caption using AI, and publishes the carousel post via Blotato.
It removes the manual work of downloading slides, writing captions, and posting to Instagram.

What this template does

When triggered by a webhook, this workflow:
Receives a payload containing carousel slide images
Splits the slides into individual items
Uploads each image to a media host
Aggregates all images into a carousel
Uses AI to generate an Instagram caption with hashtags
Publishes the post to Instagram via Blotato
This allows you to go from Canva design → Instagram post automatically.

Example use cases

This workflow is useful for:
Social media managers automating Instagram posting
Content creators producing carousel posts at scale
Agencies generating client posts automatically
AI-assisted content pipelines
Marketing automation systems
Example automation pipeline:
Claude → Canva → n8n → Instagram

Workflow overview
Webhook → Split Slides → Upload Media → Aggregate Images → Generate Caption → Publish Instagram Post
Node breakdown
Webhook
Receives a POST request containing the carousel slide data.
The payload includes slide metadata and PNG URLs generated by Canva.
Split Out Slides - Splits the slides array so each slide is processed individually.
This allows each PNG image to be uploaded and processed as its own item.
Upload Media (Blotato) - Uploads each slide image to the media host used by the social publishing platform.
Aggregate collects all uploaded image URLs into a single list.
Message a Model (AI Caption Generator)
Telegram Node for Approval
Create Post (Blotato) - Creates and publishes the Instagram carousel post

Requirements

Before using this template you must configure the following:
OpenAI API credential
Blotato API credential
Instagram account connected to Blotato
A system that sends the webhook (Claude, Canva, or another automation)

Setup instructions

Import the workflow into n8n
Configure credentials:
OpenAI
Blotato
Copy the webhook URL from the Webhook node
Configure your upstream tool (Claude / Canva / automation) to send slide data to this webhook
Test the workflow by sending a sample payload
Activate the workflow
Once active, new carousel payloads will automatically be turned into Instagram posts

Customization ideas

You can easily extend this workflow by:
Adding Telegram approval before posting
Posting to TikTok, LinkedIn, or Facebook
Storing posts in Google Sheets or Notion
Generating captions in different tones or languages
Adding AI analysis of the slides to generate smarter captions