

Automatyzuj karuzele w mediach społecznościowych za pomocą AI Slides API (2026)
Aby zautomatyzować karuzele w mediach społecznościowych, trzymaj tematy w Google Sheets, bazie Notion lub Airtable, pozwól Claude lub OpenAI przekształcić każdy nowy wiersz w konspekt 7 slajdów wraz z podpisami, a następnie użyj n8n lub Make do wywołania endpointu 2Slides API create-pdf-slides z aspectRatio: "4:5" lub "9:16". Polluj jobs/{id}, a potem pobierz PDF i PNG dla każdej strony. 7-stronicowa karuzela 2K kosztuje 710 kredytów, czyli około 1,42 do 1,78 USD, a przepis ten pasuje do zespołów contentowych publikujących kilka karuzel tygodniowo bez udziału projektanta.
Kluczowe wnioski
- Jedno wywołanie
create-pdf-slidesgeneruje 7-stronicową karuzelę w formacie PDF oraz PNG dla każdej strony w rozdzielczości 2K za 710 kredytów (10 kredytów planowania + 100 kredytów za stronę). aspectRatioprzyjmuje dowolny ciągw:h: 4:5 dla feedu LinkedIn i Instagrama, 9:16 dla Stories, Reels i TikToka, 1:1 dla postów kwadratowych.create-like-thisprzyjmujereferenceImageUrljednego slajdu marki i na jego podstawie wyprowadza cały system projektowy, dzięki czemu każda karuzela w serii pozostaje spójna.- Narracja głosowa dodaje 210 kredytów za stronę, a eksport w Workspace → Generate Video renderuje MP4 1080×1920 H.264 za 20 kredytów za stronę.
- Każdy klucz API ma limit 6 żądań na minutę, więc większe partie niż 6 tematów wymagają węzła Wait i kolejki.
Dla kogo to jest
Ten przepis jest dla marketerów treści i inżynierów marketingu operacyjnego, którzy już korzystają z n8n, Make lub Zapier, mają od 30 do 300 pomysłów na karuzele w arkuszu i tracą dni pracy projektanta co miesiąc, przekształcając je w slajdy. Pasuje też agencjom produkującym karuzele dla kilku marek klientów, które potrzebują, aby każda marka zachowała własny wygląd.
Nie używaj tego, jeśli każda karuzela wymaga ręcznie umieszczonych zrzutów ekranu produktów lub wykresów edytowanych przez projektanta w Figma. W takim przypadku automatyzacja co najwyżej oszczędza pierwszy szkic, a edytowalny PPTX z Fast PPT jest lepszym punktem startowym.
Przebieg pracy w skrócie
| Krok | Narzędzie | Co się dzieje | Endpoint 2Slides / kredyty |
|---|---|---|---|
| 1 | Google Sheets, Notion lub Airtable | Nowy wiersz z topic, channel (LinkedIn, Instagram, Stories), status = queued | Brak |
| 2 | Węzeł Claude lub OpenAI | Pisze konspekt 7 slajdów (hook, 5 slajdów głównych, CTA) oraz podpis i hashtagi w JSON | Brak |
| 3 | Węzeł HTTP Request | Przesyła konspekt z aspectRatio "4:5" lub "9:16", page: 7, resolution: "2K", mode: "async" | POST /api/v1/slides/create-pdf-slides, 710 kredytów za 7-stronicowy deck |
| 4 | Węzeł Wait + HTTP Request | Polluje co 8 sekund aż status będzie success lub failed | GET /api/v1/jobs/{id}, darmowe, 10 req/min |
| 5 | Węzeł HTTP Request | Pobiera PDF z downloadUrl i ZIP PNG dla każdej strony | POST /api/v1/slides/download-slides-pages-voices, darmowe |
| 6 | Opcjonalnie | Dodaje głos narratora, potem renderuje MP4 9:16 w Workspace | generate-narration, 210 kredytów za stronę; eksport wideo 20 kredytów za stronę |
| 7 | Google Drive, Slack | Wgrywa zasoby, publikuje do recenzji, zapisuje linki i status = ready w wierszu | Brak |
Krok 1: Wybierz pipeline do automatyzacji karuzel w mediach społecznościowych
2Slides udostępnia dwa sposoby tworzenia slajdów przez API. generate (Fast PPT) wypełnia zaprojektowany szablon i zwraca edytowalny PPTX w około 30 sekund. create-pdf-slides (pipeline Nano Banana oparty na obrazach) rysuje każdą stronę na podstawie promptu i zwraca PDF oraz obrazy dla każdej strony.
Karuzele wymagają drugiego pipeline’u z trzech powodów. Akceptuje niestandardowy aspectRatio, czego Fast PPT nie robi. Zwraca PNG dla każdej strony, które są akceptowane przez LinkedIn i Instagram. A jego zadania można narracyjnie opatrzyć i przekształcić w MP4, czego Fast PPT nie potrafi.
Zanim cokolwiek podłączysz, przetestuj dwa lub trzy prompt’y ręcznie na stronie produktu Nano Banana. Udostępnia ona to samo pole promptu i kontrolę liczby stron, co API, więc możesz dopracować sformułowanie designStyle z udziałem człowieka, a dopiero potem automatyzować.

Dla uczciwego porównania: dokumentacja deweloperska Gamma publikuje podobny przepis na karuzelę Make + Claude, ale jej klucze API wymagają planu Pro, podczas gdy klucze 2Slides działają na każdym koncie, także nowym z 500 darmowymi kredytami. 2Slides to nasz produkt, więc przetestuj oba na własnej marce i budżecie.
Krok 2: Zamień każdy wiersz listy tematów na konspekt i podpisy
Etap LLM to miejsce, gdzie następuje transformacja listy tematów w karuzelę. Poproś Claude lub OpenAI o ustrukturyzowany JSON, nie prozę, aby następny węzeł mógł go czytać bez regexów:
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.Następnie spłaszcz slajdy do ciągu userInput, którego oczekuje 2Slides. Każdy slajd ogranicz do nagłówka i jednej linii wspierającej; 7 gęstych slajdów w proporcji 4:5 szybko się robi ciasne. Ustaw contentDetail: "concise" z tego samego powodu.
// n8n Code node (lub dowolny skrypt Node 20): buduje payload 2Slides z 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 } }];Zapisz caption i hashtags z powrotem w wierszu; osoba planująca post potrzebuje ich obok PNG.
Krok 3: Skonfiguruj wywołanie API 2Slides
Utwórz klucz API na 2slides.com/api w zakładce API Keys. Nowe konta zaczynają z 500 darmowymi kredytami. Umieść klucz w magazynie poświadczeń narzędzia automatyzacji i wyślij go jako Authorization: Bearer $SLIDES_API_KEY. Nigdy nie umieszczaj go w skrypcie po stronie przeglądarki ani w publicznej komórce arkusza.

responseLanguage, a nie kod.
Wywołanie przesłania karuzeli do feedu LinkedIn wygląda tak. designStyle to tekst dowolny; bądź konkretny co do tła, koloru akcentu, typografii i czego unikać.
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"
}'Odpowiedź to { "jobId": "..." }. Dla wersji Stories lub TikTok zmień aspectRatio na "9:16" i poproś o wyższy nagłówek w designStyle, aby UI platformy go nie zasłoniło. resolution: "2K" to domyślna wartość i kosztuje tyle samo 100 kredytów za stronę co 512px i 1K; 4K to dwukrotność, czyli 200 kredytów za stronę.
Krok 4: Podłącz automatyzację karuzeli Instagram w n8n
W n8n cały flow to osiem węzłów. Ten sam schemat działa w Make z modułami HTTP i Sleep (zobacz centrum pomocy Make), a dokumentacja n8n opisuje poświadczenia HTTP Request.
- Trigger: wyzwalacz Google Sheets, Notion lub Airtable na nowy wiersz albo Schedule Trigger czytający wiersze z
status = queued - Węzeł Claude lub OpenAI: prompt z Kroku 2, wyjście JSON
- Węzeł Code: buduje
userInput, wybieraaspectRatioz kolumnychannel - Węzeł HTTP Request:
POST /api/v1/slides/create-pdf-slideszmode: "async", zapisujejobIdw wierszu - Węzeł Wait: 8 sekund
- Węzeł HTTP Request:
GET /api/v1/jobs/{jobId}; węzeł IF pętli do Wait, gdystatustopendinglubprocessing - Węzeł HTTP Request: pobiera PDF z
downloadUrl, potemPOST /api/v1/slides/download-slides-pages-voicespo ZIP PNG - Dostarczenie: wgrywa na Google Drive, publikuje podpis na Slack, ustawia
status = ready
Jeśli wolisz mieć pętlę w kodzie, oto ta sama sekwencja jako skrypt Node 20 bez zależności.
// Node 20+. Uruchamiaj po stronie serwera; klucz nigdy nie opuszcza środowiska.
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" lub "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 do 10 s, aby nie przekroczyć limitu 10 req/min na 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()));
}
// wiersze pochodzą z eksportu Sheet/Notion/Airtable po etapie 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); // nie przekraczaj 6 zgłoszeń na minutę na klucz
}Rozpakuj ZIP ze stronami i masz 7 PNG w proporcji 4:5 lub 9:16, o którą prosiłeś. To pliki, które wgrywasz, w kolejności, do posta dokumentu LinkedIn lub posta wieloobrazkowego na Instagramie.
Krok 5: Opcjonalne narracyjne wideo 9:16 dla Reels, Stories i TikTok
To samo zadanie, które wygenerowało karuzelę, można opatrzyć narracją. generate-narration przyjmuje jobId z create-pdf-slides lub create-like-this i tworzy skrypt oraz ścieżkę głosową dla każdej strony. Wybierz jeden z 30 głosów (Zephyr, Puck, Charon, Kore, Aoede, Leda) i zachowaj contentMode: "concise", aby każda strona trwała kilka sekund.
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
}'Narracja jest tylko asynchroniczna, więc polluj jobs/{id} tak samo. Po zakończeniu download-slides-pages-voices zwraca ZIP z PNG i WAV dla każdej strony, które można zmontować FFmpeg w pionowe wideo. Jeśli nie chcesz używać FFmpeg, otwórz zadanie w Workspace 2Slides i użyj Eksport → Generate Video, co wyrenderuje MP4 1080×1920 H.264 w przeglądarce za 20 kredytów za stronę.
Dla tempa, hooków i synchronizacji podpisów w pionowym wideo przeczytaj faceless educational shorts playbook oraz post narration and video best practices.
Wybór stylu referencyjnego: generator karuzel LinkedIn API dopasowany do Twojej marki
Tekst designStyle przybliża wygląd marki, ale jest niejednoznaczny. Jeśli Twój zespół ma jeden slajd, który wszyscy uważają za poprawny, zmień wywołanie na create-like-this i przekaż go jako referenceImageUrl. 2Slides wyprowadza cały system projektowy (paletę, skalę typografii, siatkę układu) z referencji, więc karuzela 40 pasuje do karuzeli 1. Koszt i limity są takie same jak przy 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"
}'Referencja musi być publicznym URL: Twój CDN, bucket S3 lub R2 z publicznym odczytem albo link do udostępnienia, który działa bez logowania. Trzymaj jedną referencję na markę w kolumnie arkusza tematów, aby węzeł Code mógł ją wybrać dla każdego wiersza.
Jeśli nie masz jeszcze slajdu marki, 2Slides Gallery zawiera prawdziwe decki, które możesz wykorzystać jako inspirację lub przekazać bezpośrednio jako referenceImageUrl. Poniższe obrazy pochodzą z dwóch decków Gallery. Nie są to wyniki API z tego workflow; to przykładowe style, które możesz wskazać API.



Wybierz referencję z jednym wyraźnym nagłówkiem, prostym tłem i widocznym znakiem marki. Zajęte referencje ze zdjęciami i kilkoma wykresami dają karuzele trudne do czytania na telefonie.
Koszty
Każda 7-stronicowa karuzela w 2K to 10 kredytów planowania + 7 × 100 = 710 kredytów. Kredyty kosztują 0,0025 USD za sztukę w pakiecie 5 USD (2 000 kredytów) i 0,002 USD w pakiecie 80 USD (40 000 kredytów). Pobieranie PNG i polling są darmowe.
| Wolumen | Kredyty miesięcznie | Pasujący pakiet | USD miesięcznie | USD za karuzelę |
|---|---|---|---|---|
| 20 karuzel, 7 stron, 2K, bez narracji | 14 200 | 42,50 USD za 20 000 kredytów | ≈ 30,18 USD | ≈ 1,51 USD |
| 500 karuzel, 7 stron, 2K, bez narracji | 355 000 | 9 × 80 USD za 40 000 kredytów | ≈ 710 USD po 0,002 USD za kredyt | ≈ 1,42 USD |
| Dodaj narrację do jednej 7-stronicowej karuzeli | +1 470 | ≈ 2,94 do 3,68 USD | ||
| Dodaj eksport wideo Workspace do jednej 7-stronicowej karuzeli | +140 | ≈ 0,28 do 0,35 USD |
Opcjonalna subskrypcja Pro zawiera 10 000 kredytów miesięcznie (12,50 USD promocyjnie, 25 USD standardowo), co wystarcza na 14 karuzel miesięcznie. 500 darmowych kredytów przy rejestracji nie wystarcza na pełny 7-stronicowy deck, więc najpierw przetestuj 3-stronicowy przebieg (310 kredytów). Zobacz batch playbook dla zespołów marketingowych, jeśli planujesz to dla wielu marek.
Fast PPT czy slajdy projektowane obrazowo do tego zastosowania?
| Potrzeba | Użyj | Dlaczego |
|---|---|---|
| Wyjście 4:5 lub 9:16, PNG na stronę, narracja, MP4 | create-pdf-slides lub create-like-this | Pipeline oparty na obrazach akceptuje aspectRatio i może być narracyjny; Fast PPT nie |
| Edytowalny PPTX na webinar lub deck sprzedażowy na ten sam temat | generate (Fast PPT) | 10 kredytów za stronę, natywny PPTX z 1500+ szablonów przez themes/search |
| Jeden zablokowany wygląd marki w setkach karuzel | create-like-this z referenceImageUrl | Wyprowadza system projektowy z jednego obrazu zamiast interpretować prozę |
| Szybki szkic wewnętrzny przed recenzją designu | create-pdf-slides przy resolution: "512px" | Te same 100 kredytów za stronę co 2K; po zatwierdzeniu regeneruj w 2K |
Typowe pułapki
- Wysyłanie 30 wierszy naraz i otrzymywanie 429. Każdy klucz ma limit 6 żądań na minutę na endpointach generacji i 10 na minutę na
jobs/{id}. Wstaw węzeł Wait między zgłoszeniami i polluj nie szybciej niż co 5 sekund. - Przechowywanie klucza API w arkuszu lub skrypcie po stronie klienta. Klucz zużywa Twoje kredyty. Trzymaj go w poświadczeniach n8n lub Make albo w zmiennej środowiskowej serwera i rotuj, jeśli kiedykolwiek trafi do przeglądarki.
- Próba narracji zadania Fast PPT.
generate-narrationodrzuca zadania zgenerate. Narrację i eksport do MP4 można zrobić tylko na zadaniachcreate-pdf-slidesicreate-like-this. - Podawanie
page: 0i oczekiwanie 7 slajdów.page: 0oznacza auto-detekcję na podstawie treści, co może zwrócić 4 lub 12 stron. Ustawpage: 7jawnie, aby koszt i układ były przewidywalne. - Wysyłanie kodu języka.
responseLanguageprzyjmuje nazwę języka, np."Spanish"lub"Simplified Chinese", a nie"es"czy"zh-CN". - Podawanie artykułu 2000 słów jako
userInput. Model obrazowy spróbuje go zmieścić. Niech etap LLM skróci go do 7 nagłówków z jedną linią każda przed wysłaniem.
Najczęściej zadawane pytania
Czy mogę zautomatyzować karuzele w mediach społecznościowych bez projektanta?
Tak, dla pierwszego szkicu i większości powtarzalnych formatów. LLM pisze konspekt 7 slajdów, create-pdf-slides rysuje slajdy w Twoim designStyle lub na podstawie referenceImageUrl, a n8n dostarcza PNG do kanału recenzji. Osoba nadal zatwierdza każdą karuzelę przed publikacją, ale praca nad designem i układem jest już wykonana, gdy ją widzi.
Jakiego proporcji używać dla karuzel LinkedIn a jak dla Instagrama?
Użyj aspectRatio: "4:5" dla feedu LinkedIn i karuzeli feedu Instagrama, bo oba wyświetlają pionowe karty w tej proporcji. Użyj "9:16" dla Instagram Stories, okładek Reels i pokazów slajdów TikTok. "1:1" działa, jeśli potrzebujesz kwadratowego zestawu na każdą platformę. Parametr akceptuje dowolny ciąg w:h, więc możesz dodać proporcje później bez zmiany workflow.
Ile kosztuje wywołanie API AI carousel maker za karuzelę?
7-stronicowa karuzela w rozdzielczości 2K kosztuje 710 kredytów: 10 kredytów planowania plus 100 kredytów za stronę. To około 1,78 USD w pakiecie 5 USD i 1,42 USD w pakiecie 80 USD. Polling i pobieranie PNG są darmowe. Narracja dodaje 210 kredytów za stronę, a renderowanie wideo w Workspace 20 kredytów za stronę.
Czy workflow może wygenerować narracyjne wideo karuzeli?
Tak. Wywołaj generate-narration z jobId karuzeli, wybierz jeden z 30 głosów i polluj aż się zakończy. Następnie pobierz ZIP PNG i WAV z download-slides-pages-voices i zmontuj FFmpeg, albo otwórz zadanie w Workspace 2Slides i użyj Eksport → Generate Video, aby wyrenderować MP4 1080×1920. Narracja działa tylko na zadaniach create-pdf-slides i create-like-this.
Czy automatyzacja karuzeli Instagram działa z Make lub Zapier zamiast n8n?
Tak. Każdy krok to zwykłe wywołanie HTTPS z tokenem Bearer, więc moduł HTTP Make i akcja Webhooks Zapier mogą wysyłać, pollować i pobierać tak samo. Jedynym wymogiem jest pętla czekająca 5 do 10 sekund między sprawdzeniami jobs/{id}. n8n i Make obsługują to natywnie; w Zapier możesz użyć Delay i drugiego Zapa do pollingu.
Kolejne kroki
- Utwórz klucz API na 2slides.com/api. Nowe konta dostają 500 darmowych kredytów, wystarczających na test karuzeli 3-stronicowej, a klucz działa bez subskrypcji.
- Przeczytaj wpis hubowy o przypadkach użycia API prezentacji AI według zespołu, aby zobaczyć, jak ten sam loop submit-poll-download zasila decki sprzedażowe, HR i edukacyjne.
- Aby automatyzować karuzele w mediach społecznościowych razem z innymi deckami, zacznij od darmowego tutoriala workflow n8n + 2Slides i batch playbook dla zespołów marketingowych, a potem dodaj narrację do Reels z najlepszymi praktykami narracji i wideo.
About 2Slides
Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.
Try For Free