

Otomatiskan Carousel Media Sosial dengan API Slides AI (2026)
Untuk mengotomatisasi carousel media sosial, simpan topik Anda di Google Sheet, database Notion, atau basis Airtable, biarkan Claude atau OpenAI mengubah setiap baris baru menjadi garis besar 7 slide plus caption, dan gunakan n8n atau Make untuk memanggil endpoint API 2Slides create-pdf-slides dengan aspectRatio: "4:5" atau "9:16". Poll jobs/{id}, lalu unduh PDF dan PNG per halaman. Carousel 7 halaman 2K memakan biaya 710 kredit, sekitar $1,42 hingga $1,78, dan resep ini cocok untuk tim konten yang menerbitkan beberapa carousel per minggu tanpa melibatkan desainer.
Poin-poin utama
- Satu panggilan
create-pdf-slidesmenghasilkan carousel 7 halaman sebagai PDF plus PNG per halaman di resolusi 2K dengan biaya 710 kredit (10 kredit perencanaan + 100 kredit per halaman). aspectRatiomenerima stringw:hapa saja: 4:5 untuk feed LinkedIn dan Instagram, 9:16 untuk Stories, Reels, dan TikTok, 1:1 untuk postingan persegi.create-like-thismenerimareferenceImageUrldari satu slide merek dan menurunkan seluruh sistem desain darinya, sehingga setiap carousel dalam seri tetap konsisten.- Narasi suara menambah 210 kredit per halaman, dan Workspace Export → Generate Video menghasilkan MP4 H.264 1080×1920 dengan biaya 20 kredit per halaman.
- Setiap API key dibatasi 6 permintaan per menit, jadi batch lebih dari 6 topik perlu node Wait dan antrean.
Siapa yang cocok menggunakan ini
Resep ini untuk pemasar konten dan insinyur operasi pemasaran yang sudah menjalankan n8n, Make, atau Zapier, memiliki 30 hingga 300 ide carousel dalam spreadsheet, dan kehilangan waktu berhari-hari dari desainer setiap bulan untuk mengubahnya menjadi slide. Ini juga cocok untuk agensi yang memproduksi carousel untuk beberapa merek klien dan perlu setiap merek mempertahankan tampilan sendiri.
Jangan gunakan jika setiap carousel membutuhkan screenshot produk yang ditempatkan manual atau grafik yang diedit desainer di Figma. Dalam kasus itu, otomatisasi hanya menyelamatkan draft pertama paling banyak, dan PPTX yang dapat diedit dari Fast PPT adalah titik awal yang lebih baik.
Alur kerja secara singkat
| Langkah | Alat | Apa yang terjadi | Endpoint 2Slides / kredit |
|---|---|---|---|
| 1 | Google Sheets, Notion, atau Airtable | Baris baru dengan topic, channel (LinkedIn, Instagram, Stories), status = queued | Tidak ada |
| 2 | Node Claude atau OpenAI | Menulis garis besar 7 slide (hook, 5 slide isi, CTA) plus caption dan hashtag dalam JSON | Tidak ada |
| 3 | Node HTTP Request | Mengirim garis besar dengan aspectRatio "4:5" atau "9:16", page: 7, resolution: "2K", mode: "async" | POST /api/v1/slides/create-pdf-slides, 710 kredit per deck 7 halaman |
| 4 | Node Wait + HTTP Request | Poll setiap 8 detik sampai status success atau failed | GET /api/v1/jobs/{id}, gratis, 10 req/menit |
| 5 | Node HTTP Request | Mengunduh PDF dari downloadUrl dan ZIP PNG per halaman | POST /api/v1/slides/download-slides-pages-voices, gratis |
| 6 | Opsional | Menambahkan suara narator, lalu render MP4 9:16 di Workspace | generate-narration, 210 kredit per halaman; ekspor video 20 kredit per halaman |
| 7 | Google Drive, Slack | Mengunggah aset, posting untuk review, menulis tautan dan status = ready ke baris | Tidak ada |
Langkah 1: Pilih pipeline untuk mengotomasi carousel media sosial
2Slides menyediakan dua cara membuat slide lewat API. generate (Fast PPT) mengisi template yang sudah didesain dan mengembalikan PPTX yang dapat diedit dalam sekitar 30 detik. create-pdf-slides (pipeline desain gambar Nano Banana) menggambar setiap halaman dari prompt Anda dan mengembalikan PDF plus gambar per halaman.
Carousel membutuhkan pipeline kedua karena tiga alasan. Ia menerima aspectRatio kustom, yang tidak dimiliki Fast PPT. Ia mengembalikan PNG per halaman, yang dibaca LinkedIn dan Instagram. Dan pekerjaannya bisa dinarasikan dan diubah menjadi MP4, yang tidak bisa dilakukan Fast PPT.
Sebelum menghubungkan apa pun, jalankan dua atau tiga prompt secara manual di halaman produk Nano Banana. Halaman itu menyediakan kotak prompt dan kontrol jumlah halaman yang sama dengan API, jadi Anda bisa menetapkan kata-kata designStyle dengan manusia dalam loop dan baru kemudian mengotomatisasinya.

Untuk perbandingan yang adil: Dokumentasi pengembang Gamma menerbitkan resep carousel Make + Claude serupa, tapi API key-nya memerlukan paket Pro, sementara API key 2Slides bekerja di akun apa pun, termasuk yang baru dengan 500 kredit gratis. 2Slides adalah produk kami, jadi uji keduanya dengan merek dan anggaran Anda sendiri.
Langkah 2: Ubah setiap baris daftar topik menjadi garis besar dan caption
Langkah LLM adalah tempat transformasi daftar topik ke carousel terjadi. Minta Claude atau OpenAI untuk JSON terstruktur, bukan prosa, agar node berikutnya bisa membacanya tanpa regex:
You write LinkedIn and Instagram carousels for {{brand}}.
Topic: {{topic}}
Audience: {{audience}}
Return JSON only:
{
"slides": [
{ "n": 1, "title": "<hook, max 8 words>", "body": "<one line>" },
... exactly 7 slides; slide 7 is the call to action ...
],
"caption": "<120 to 200 words, no hashtags>",
"hashtags": ["<5 to 8 tags>"]
}
Rules: one idea per slide, no bullet lists inside a slide, plain language.Lalu ratakan slide menjadi string userInput yang diharapkan 2Slides. Jaga setiap slide hanya berisi judul dan satu baris pendukung; 7 slide padat di 4:5 cepat terasa sesak. Setel contentDetail: "concise" untuk alasan yang sama.
// Node Kode n8n (atau skrip Node 20 apa saja): buat payload 2Slides dari JSON LLM
const plan = JSON.parse($json.llmOutput);
const userInput = plan.slides
.map((s) => `Slide ${s.n}: ${s.title}\n${s.body}`)
.join("\n\n");
const aspectRatio = $json.channel === "Stories" ? "9:16" : "4:5";
return [{ json: { userInput, aspectRatio, caption: plan.caption, hashtags: plan.hashtags } }];Simpan caption dan hashtags kembali ke baris; orang yang menjadwalkan posting membutuhkannya berdampingan dengan PNG.
Langkah 3: Siapkan panggilan API 2Slides
Buat API key di 2slides.com/api pada tab API Keys. Akun baru mulai dengan 500 kredit gratis. Simpan key di penyimpanan kredensial alat otomatisasi Anda dan kirim sebagai Authorization: Bearer $SLIDES_API_KEY. Jangan pernah letakkan di skrip sisi browser atau sel Sheet publik.

responseLanguage, bukan kode.
Panggilan pengiriman untuk carousel feed LinkedIn seperti ini. designStyle adalah teks bebas; jelaskan latar belakang, warna aksen, tipografi, dan apa yang harus dihindari.
curl -X POST https://2slides.com/api/v1/slides/create-pdf-slides \
-H "Authorization: Bearer $SLIDES_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"userInput": "Slide 1: 5 onboarding emails every SaaS should send\nMost trials churn before day 3. These five fix that.\n\nSlide 2: Day 0, the welcome\nOne job: get them to the first aha moment.\n\nSlide 3: Day 1, the quick win\nShow one feature, one outcome, one button.\n\nSlide 4: Day 3, the social proof\nA customer quote and a number.\n\nSlide 5: Day 5, the blocker check\nAsk what stopped them. Reply personally.\n\nSlide 6: Day 7, the decision\nRestate value, then the price.\n\nSlide 7: Save this carousel\nFollow for the full sequence templates.",
"designStyle": "Bold editorial carousel for LinkedIn. Off-white background, one deep navy accent, oversized serif headline on each slide, small sans-serif body line, thin page counter top-right, brand mark bottom-left. No stock photos, no gradients.",
"aspectRatio": "4:5",
"resolution": "2K",
"page": 7,
"contentDetail": "concise",
"imageModel": "gemini-3-pro-image",
"responseLanguage": "English",
"mode": "async"
}'Responsnya { "jobId": "..." }. Untuk versi Stories atau TikTok, ubah aspectRatio menjadi "9:16" dan minta judul lebih tinggi di designStyle agar UI platform tidak menutupinya. resolution: "2K" adalah default dan biayanya sama 100 kredit per halaman seperti 512px dan 1K; 4K dua kali lipat menjadi 200 kredit per halaman.
Langkah 4: Hubungkan otomatisasi carousel Instagram di n8n
Di n8n alur lengkapnya delapan node. Bentuk yang sama bisa digunakan di Make dengan modul HTTP dan Sleep-nya (lihat pusat bantuan Make), dan dokumentasi n8n membahas kredensial HTTP Request.
- Trigger: trigger Google Sheets, Notion, atau Airtable pada baris baru, atau Schedule Trigger yang membaca baris dengan
status = queued - Node Claude atau OpenAI: prompt dari Langkah 2, output JSON
- Node Kode: buat
userInput, pilihaspectRatiodari kolomchannel - Node HTTP Request:
POST /api/v1/slides/create-pdf-slidesdenganmode: "async", simpanjobIdke baris - Node Wait: 8 detik
- Node HTTP Request:
GET /api/v1/jobs/{jobId}; node IF mengulangi ke Wait selamastatuspendingatauprocessing - Node HTTP Request: unduh PDF dari
downloadUrl, laluPOST /api/v1/slides/download-slides-pages-voicesuntuk ZIP PNG - Deliver: unggah ke Google Drive, posting caption ke Slack, set
status = ready
Jika Anda lebih suka mengelola loop dalam kode, berikut urutan yang sama sebagai skrip Node 20 tanpa dependensi.
// Node 20+. Jalankan server-side; key tidak pernah keluar dari lingkungan Anda.
import { writeFile } from "node:fs/promises";
const BASE = "https://2slides.com";
const headers = {
Authorization: `Bearer ${process.env.SLIDES_API_KEY}`,
"Content-Type": "application/json",
};
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
async function submitCarousel(row) {
const res = await fetch(`${BASE}/api/v1/slides/create-pdf-slides`, {
method: "POST",
headers,
body: JSON.stringify({
userInput: row.userInput,
designStyle: row.designStyle,
aspectRatio: row.aspectRatio, // "4:5" atau "9:16"
resolution: "2K",
page: 7,
contentDetail: "concise",
responseLanguage: "English",
mode: "async",
}),
});
if (!res.ok) throw new Error(`submit failed: ${res.status} ${await res.text()}`);
const { jobId } = await res.json();
return jobId;
}
async function waitForJob(jobId) {
for (;;) {
const res = await fetch(`${BASE}/api/v1/jobs/${jobId}`, { headers });
const job = await res.json();
if (job.status === "success") return job;
if (job.status === "failed") throw new Error(`job ${jobId} failed`);
await sleep(8000); // 5 sampai 10 detik menjaga di bawah batas 10 req/menit pada jobs/{id}
}
}
async function downloadAssets(jobId, job, slug) {
const pdf = await fetch(job.downloadUrl);
await writeFile(`${slug}.pdf`, Buffer.from(await pdf.arrayBuffer()));
const zip = await fetch(`${BASE}/api/v1/slides/download-slides-pages-voices`, {
method: "POST",
headers,
body: JSON.stringify({ jobId }),
});
await writeFile(`${slug}-pages.zip`, Buffer.from(await zip.arrayBuffer()));
}
// baris berasal dari ekspor Sheet/Notion/Airtable Anda setelah langkah LLM
for (const row of rows) {
const jobId = await submitCarousel(row);
const job = await waitForJob(jobId);
await downloadAssets(jobId, job, row.slug);
await sleep(10_000); // tetap di bawah 6 pengiriman per menit per key
}Ekstrak ZIP halaman dan Anda akan mendapatkan 7 PNG dengan rasio 4:5 atau 9:16 sesuai permintaan. File-file itu yang Anda unggah, berurutan, ke posting dokumen LinkedIn atau posting multi-gambar Instagram.
Langkah 5: Opsional video narasi 9:16 untuk Reels, Stories, dan TikTok
Pekerjaan yang sama yang menghasilkan carousel Anda bisa dinarasikan. generate-narration menerima jobId dari create-pdf-slides atau create-like-this dan menulis skrip plus trek suara untuk setiap halaman. Pilih salah satu dari 30 suara (Zephyr, Puck, Charon, Kore, Aoede, Leda) dan gunakan contentMode: "concise" agar setiap halaman berjalan beberapa detik.
curl -X POST https://2slides.com/api/v1/slides/generate-narration \
-H "Authorization: Bearer $SLIDES_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jobId": "JOB_ID_FROM_STEP_3",
"mode": "single",
"speakerName": "Host",
"voice": "Kore",
"contentMode": "concise",
"includeIntro": false
}'Narasi hanya async, jadi poll jobs/{id} dengan cara yang sama. Saat selesai, download-slides-pages-voices mengembalikan ZIP dengan PNG per halaman dan WAV per halaman, yang bisa Anda gabungkan dengan FFmpeg menjadi video vertikal. Jika tidak ingin menjalankan FFmpeg, buka pekerjaan di Workspace 2Slides dan gunakan Export → Generate Video, yang merender MP4 H.264 1080×1920 di browser dengan biaya 20 kredit per halaman.
Untuk pacing, hook, dan timing caption di video vertikal, baca playbook faceless educational shorts dan posting praktik terbaik narasi dan video.
Memilih gaya referensi: API pembuat carousel LinkedIn yang sesuai merek Anda
Teks designStyle membawa Anda dekat dengan tampilan merek, tapi teks ambigu. Jika tim Anda punya satu slide yang semua setuju sudah tepat, ubah pengiriman ke create-like-this dan kirim sebagai referenceImageUrl. 2Slides menurunkan seluruh sistem desain (palet, skala tipe, grid tata letak) dari referensi itu, sehingga carousel 40 cocok dengan carousel 1. Biaya dan batasan sama dengan create-pdf-slides.
curl -X POST https://2slides.com/api/v1/slides/create-like-this \
-H "Authorization: Bearer $SLIDES_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"userInput": "Slide 1: 5 onboarding emails every SaaS should send ... Slide 7: Save this carousel",
"referenceImageUrl": "https://assets.yourbrand.com/carousel-style-reference.png",
"aspectRatio": "4:5",
"resolution": "2K",
"page": 7,
"contentDetail": "concise",
"mode": "async"
}'Referensi harus berupa URL publik: CDN Anda, bucket S3 atau R2 dengan akses baca publik, atau tautan berbagi yang bisa diakses tanpa login. Simpan satu referensi per merek di kolom sheet topik agar node Kode bisa memilihnya per baris.
Jika Anda belum punya slide merek, Galeri 2Slides menampung deck dunia nyata yang bisa Anda gunakan sebagai inspirasi desain atau langsung kirim sebagai referenceImageUrl. Gambar di bawah berasal dari dua deck Galeri tersebut. Mereka bukan output API dari alur kerja ini; mereka jenis gaya sumber yang akan Anda tunjuk ke API.



Pilih referensi dengan satu judul jelas, latar belakang polos, dan tanda merek yang terlihat. Referensi ramai dengan foto dan beberapa grafik menghasilkan carousel yang sulit dibaca di ukuran ponsel.
Biaya yang diperlukan
Setiap carousel 7 halaman di 2K adalah 10 kredit perencanaan + 7 × 100 = 710 kredit. Kredit berharga $0,0025 per kredit di paket $5 (2.000 kredit) dan $0,002 per kredit di paket $80 (40.000 kredit). Unduhan PNG dan polling gratis.
| Volume | Kredit per bulan | Paket yang cocok | USD per bulan | USD per carousel |
|---|---|---|---|---|
| 20 carousel, 7 halaman, 2K, tanpa narasi | 14.200 | $42,50 untuk 20.000 kredit | ≈ $30,18 | ≈ $1,51 |
| 500 carousel, 7 halaman, 2K, tanpa narasi | 355.000 | 9 × $80 untuk 40.000 kredit | ≈ $710 dengan $0,002 per kredit | ≈ $1,42 |
| Tambah narasi ke satu carousel 7 halaman | +1.470 | ≈ $2,94 sampai $3,68 | ||
| Tambah ekspor video Workspace ke satu carousel 7 halaman | +140 | ≈ $0,28 sampai $0,35 |
Langganan Pro opsional termasuk 10.000 kredit per bulan ($12,50 per bulan promo, $25 harga normal), yang mencakup 14 carousel per bulan. 500 kredit gratis saat daftar tidak cukup untuk satu deck 7 halaman penuh, jadi uji dulu dengan run 3 halaman (310 kredit). Lihat playbook batch untuk tim pemasaran jika Anda mengukurnya untuk beberapa merek.
Fast PPT atau slide desain gambar untuk kasus penggunaan ini?
| Kebutuhan | Gunakan | Kenapa |
|---|---|---|
| Output 4:5 atau 9:16, PNG per halaman, narasi, MP4 | create-pdf-slides atau create-like-this | Pipeline desain gambar menerima aspectRatio dan bisa dinarasikan; Fast PPT tidak bisa |
| PPTX yang dapat diedit untuk webinar atau deck penjualan dengan topik sama | generate (Fast PPT) | 10 kredit per halaman, PPTX asli dari 1.500+ template via themes/search |
| Satu tampilan merek terkunci di ratusan carousel | create-like-this dengan referenceImageUrl | Menurunkan sistem desain dari satu gambar, bukan menginterpretasi prosa |
| Draft internal cepat sebelum review desain | create-pdf-slides di resolution: "512px" | Sama 100 kredit per halaman seperti 2K; regenerasi di 2K setelah disetujui |
Kesalahan umum
- Mengirim 30 baris sekaligus dan mendapat 429. Setiap key dibatasi 6 permintaan per menit di endpoint generasi dan 10 per menit di
jobs/{id}. Pasang node Wait antar pengiriman dan polling tidak lebih cepat dari 5 detik. - Menyimpan API key di Sheet atau skrip sisi klien. Key menghabiskan kredit Anda. Simpan di kredensial n8n atau Make atau variabel lingkungan server, dan ganti jika pernah sampai ke browser.
- Mencoba menarasikan pekerjaan Fast PPT.
generate-narrationmenolak pekerjaan darigenerate. Hanya pekerjaancreate-pdf-slidesdancreate-like-thisyang bisa dinarasikan atau diekspor ke MP4. - Mengirim
page: 0dan mengharapkan 7 slide.page: 0berarti deteksi otomatis dari konten, yang bisa mengembalikan 4 atau 12 halaman. Tetapkanpage: 7secara eksplisit agar biaya dan tata letak dapat diprediksi. - Mengirim kode bahasa.
responseLanguagemenerima nama bahasa seperti"Spanish"atau"Simplified Chinese", bukan"es"atau"zh-CN". - Memberi artikel 2.000 kata sebagai
userInput. Model gambar akan mencoba memuatnya. Biarkan langkah LLM menguranginya menjadi 7 judul dengan satu baris masing-masing sebelum dikirim.
Pertanyaan yang Sering Diajukan
Bisakah saya mengotomatisasi carousel media sosial tanpa desainer?
Bisa, untuk draft pertama dan sebagian besar format berulang. LLM menulis garis besar 7 slide, create-pdf-slides menggambar slide dalam designStyle Anda atau dari referenceImageUrl, dan n8n mengirim PNG ke saluran review. Orang masih menyetujui setiap carousel sebelum diposting, tapi pekerjaan desain dan tata letak sudah selesai saat mereka melihatnya.
Rasio aspek mana yang harus saya gunakan untuk carousel LinkedIn versus Instagram?
Gunakan aspectRatio: "4:5" untuk feed LinkedIn dan carousel feed Instagram, karena keduanya menampilkan kartu potret dengan rasio itu. Gunakan "9:16" untuk Instagram Stories, sampul Reels, dan slideshow TikTok. "1:1" cocok jika Anda butuh satu set persegi untuk semua platform. Parameter menerima string w:h apa saja, jadi Anda bisa menambah rasio nanti tanpa mengubah alur kerja.
Berapa biaya panggilan API pembuat carousel AI per carousel?
Carousel 7 halaman di resolusi 2K memakan 710 kredit: 10 kredit perencanaan plus 100 kredit per halaman. Itu sekitar $1,78 di paket $5 dan $1,42 di paket $80. Polling dan unduhan PNG gratis. Narasi menambah 210 kredit per halaman, dan render video di Workspace menambah 20 kredit per halaman.
Apakah alur kerja bisa menghasilkan versi video narasi dari carousel?
Bisa. Panggil generate-narration dengan jobId carousel, pilih salah satu dari 30 suara, dan polling sampai berhasil. Lalu unduh ZIP PNG dan WAV dari download-slides-pages-voices dan gabungkan dengan FFmpeg, atau buka pekerjaan di Workspace 2Slides dan gunakan Export → Generate Video untuk MP4 1080×1920. Narasi hanya bekerja pada pekerjaan create-pdf-slides dan create-like-this.
Apakah otomatisasi carousel Instagram bekerja dengan Make atau Zapier selain n8n?
Ya. Setiap langkah adalah panggilan HTTPS biasa dengan token Bearer, jadi modul HTTP Make dan aksi Webhooks Zapier bisa mengirim, polling, dan mengunduh dengan cara yang sama. Satu syarat adalah loop yang menunggu 5 sampai 10 detik antar pengecekan jobs/{id}. n8n dan Make menangani ini secara native; di Zapier Anda mungkin lebih suka langkah Delay dan Zap kedua untuk polling.
Langkah berikutnya
- Buat API key di 2slides.com/api. Akun baru mendapat 500 kredit gratis, cukup untuk uji carousel 3 halaman, dan key bekerja tanpa langganan.
- Baca posting hub tentang kasus penggunaan API presentasi AI menurut tim untuk melihat bagaimana loop submit, poll, dan download yang sama menggerakkan deck penjualan, HR, dan pendidikan.
- Untuk mengotomasi carousel media sosial bersama deck lain Anda, mulai dari tutorial alur kerja n8n + 2Slides gratis dan playbook batch tim pemasaran, lalu tambahkan narasi untuk Reels dengan praktik terbaik narasi dan video.
About 2Slides
Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.
Try For Free