

Przewodnik Airtable → prezentacja AI (2026)
Airtable to centralna baza danych dla tysięcy zespołów — CRM pipelines, trackery projektów, kalendarze treści, CRM inwestorskie, systemy magazynowe. Pipeline Airtable-do-prezentacji 2026 przekształca dowolny widok Airtable w gotową prezentację PowerPoint w mniej niż minutę, wykorzystując dwa podejścia: (1) no-code przez Airtable Automations + Make/Zapier + API 2Slides, idealny dla prezentacji per-rekord lub per-widok (cotygodniowe przeglądy klientów, comiesięczne aktualizacje dla inwestorów); (2) niestandardowe rozszerzenie Airtable (Extension) używające API V1 2Slides, idealne do generowania prezentacji na żądanie bezpośrednio z poziomu Airtable. Ten przewodnik przeprowadzi Cię przez oba workflow z działającym kodem, dokładnym payload API 2Slides oraz czterema rzeczywistymi wzorcami prezentacji opartych na Airtable (przegląd sales pipeline, miesięczny raport kalendarza treści, QBR tracker projektów, aktualizacja CRM inwestorskiego), które możesz dostosować do własnej bazy. Każdy wzorzec zawiera dokładne mapowanie pól, logikę konstrukcji promptów i strategię polling, dzięki czemu możesz wkleić go do własnego workspace i mieć gotową do produkcji integrację jeszcze tego samego popołudnia.
Architektura Airtable-to-Deck na rok 2026
Większość baz Airtable już zawiera 80% prezentacji: liczby, nazwy, daty, flagi statusu. Brakuje warstwy narracyjnej — nagłówka, kontekstu, informacji „co to oznacza dla biznesu". Właśnie tę lukę wypełnia generator prezentacji oparty na dużym modelu językowym.
Architektura z 2026 roku rozdziela trzy obszary odpowiedzialności:
- Warstwa danych (Airtable) — rekordy, widoki, filtry, agregacje. To tutaj znajduje się jedyne źródło prawdy. Proces generowania prezentacji nie powinien wymagać powielania danych w innym miejscu.
- Warstwa orkiestracji (Airtable Automations, Zapier, Make lub niestandardowe rozszerzenie Extension) — element łączący, który nasłuchuje wyzwalaczy (naciśnięcie przycisku, zmiana statusu, zaplanowany cron), odpytuje odpowiednie rekordy, formatuje je w prompt i wywołuje API 2Slides.
- Warstwa generowania (2Slides V1 API) — endpoint przyjmuje prompt wraz z opcjonalnymi parametrami motywu i liczby slajdów, a następnie asynchronicznie tworzy plik PowerPoint z narracją wygenerowaną przez AI, uporządkowanymi wykresami, notatkami prelegenta i opcjonalną narracją audio.
/api/v1/slides/generate
Warstwa orkiestracji to miejsce, gdzie wybór implementacji ma znaczenie. Zespoły, które chcą rozwiązania bez kodu, sięgają po Airtable Automations + webhook Zapier. Zespoły, które chcą przycisk „Generuj prezentację" bezpośrednio w Airtable, tworzą niestandardowe rozszerzenie Extension. Obie ścieżki zbiegają się do tego samego kontraktu API, więc można zacząć od prototypowania bez kodu, a później przejść na rozwiązanie z Extension.
Metoda 1: Bez kodu (Airtable Automations + Zapier + 2Slides)
Ścieżka bez kodu jest najszybszą drogą do wdrożenia — zazwyczaj poniżej godziny — i jest właściwym wyborem, gdy wyzwalacz jest oparty na rekordzie (nowa transakcja wchodzi w etap „Propozycja", projekt jest oznaczony jako „Gotowy do QBR", kampania osiąga koniec miesiąca).
Krok 1: Przygotuj bazę Airtable
Dodaj trzy pola do tabeli, z której chcesz generować prezentacje:
- (pojedynczy wybór: W kolejce, Generowanie, Gotowa, Błąd)
Status prezentacji - (URL)
URL prezentacji - (tekst jednowierszowy)
ID zadania prezentacji
Te pola pozwalają automatyzacji zapisywać postęp z powrotem do rekordu, dzięki czemu użytkownik widzi prezentację pojawiającą się w tym samym wierszu, z którego ją uruchomił.
Krok 2: Zbuduj automatyzację Airtable
Utwórz nową automatyzację z wyzwalaczem "When record matches conditions" — np. Status prezentacji to W kolejce. Dodaj akcję "Run a script", która formatuje rekord w prompt:
const inputConfig = input.config(); const record = inputConfig.record; const prompt = `Create a 10-slide account review deck for ${record.accountName}. Pipeline value: $${record.pipelineValue.toLocaleString()}. Current stage: ${record.stage}. Last touchpoint: ${record.lastTouchpoint}. Open risks: ${record.risks}. Recommended next action: ${record.nextAction}. Structure: title, executive summary, relationship history, pipeline status, risks and blockers, opportunity sizing, recommended next steps, appendix.`; output.set('prompt', prompt); output.set('recordId', record.id);
Krok 3: Wyślij webhook do Zapier (lub Make)
Dodaj akcję "Send webhook", która wysyła POST do punktu przechwytującego Zapier. Drugi krok Zapier wywołuje API 2Slides:
POST https://2slides.com/api/v1/slides/generate Headers: Authorization: Bearer {{YOUR_2SLIDES_API_KEY}} Content-Type: application/json Body: { "prompt": "{{prompt from Airtable}}", "pages": 10, "theme": "corporate-navy", "language": "en", "webhook": "https://hooks.zapier.com/hooks/catch/XXXXX/airtable-deck-ready" }
Odpowiedź zawiera
jobIdStatus prezentacjiKrok 4: Obsłuż webhook zakończenia
2Slides wywołuje twój URL webhooka po zakończeniu zadania. Ten Zap odczytuje
downloadUrlURL prezentacjiStatus prezentacji = GotowaJeśli nie chcesz używać webhooków, odpytuj
/api/v1/jobs/:idMetoda 2: Niestandardowe Rozszerzenie Airtable
Gdy chcesz mieć przycisk „Generuj Prezentację" osadzony bezpośrednio w interfejsie Airtable — bez zewnętrznego Zap, bez routingu webhook — niestandardowe Rozszerzenie jest właściwym rozwiązaniem. Rozszerzenia Airtable to aplikacje React, które renderują się wewnątrz bazy i mogą wywoływać zewnętrzne API za pomocą
fetchOto minimalne Rozszerzenie, które odczytuje wybrany rekord, wywołuje
/api/v1/slides/generate/api/v1/jobs/:idimport { initializeBlock, useBase, useCursor, useRecordById, Button, Text, Box, useGlobalConfig, } from '@airtable/blocks/ui'; import React, { useState } from 'react'; function DeckGenerator() { const base = useBase(); const cursor = useCursor(); const globalConfig = useGlobalConfig(); const apiKey = globalConfig.get('TWO_SLIDES_API_KEY'); const table = base.getTableByIdIfExists(cursor.activeTableId); const record = useRecordById(table, cursor.selectedRecordIds[0] || ''); const [status, setStatus] = useState('idle'); const [deckUrl, setDeckUrl] = useState(null); async function generateDeck() { if (!record) return; setStatus('submitting'); const prompt = buildPrompt(record); const res = await fetch('https://2slides.com/api/v1/slides/generate', { method: 'POST', headers: { 'Authorization': `Bearer ${apiKey}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ prompt, pages: 10, theme: 'corporate-navy' }), }); const { jobId } = await res.json(); setStatus('generating'); pollJob(jobId); } async function pollJob(jobId) { const interval = setInterval(async () => { const res = await fetch(`https://2slides.com/api/v1/jobs/${jobId}`, { headers: { 'Authorization': `Bearer ${apiKey}` }, }); const job = await res.json(); if (job.status === 'success') { clearInterval(interval); setDeckUrl(job.downloadUrl); setStatus('ready'); await table.updateRecordAsync(record, { 'Deck URL': { url: job.downloadUrl }, 'Deck Status': { name: 'Ready' }, }); } else if (job.status === 'failed') { clearInterval(interval); setStatus('failed'); } }, 5000); } return ( <Box padding={3}> <Button onClick={generateDeck} disabled={status === 'generating'}> {status === 'generating' ? 'Generowanie…' : 'Generuj Prezentację'} </Button> {deckUrl && <Text>Prezentacja gotowa: <a href={deckUrl}>Pobierz</a></Text>} </Box> ); } function buildPrompt(record) { return `Stwórz prezentację 10-slajdową dla ${record.getCellValueAsString('Account')}. Pipeline: ${record.getCellValueAsString('Pipeline Value')}. Etap: ${record.getCellValueAsString('Stage')}. Notatki: ${record.getCellValueAsString('Notes')}.`; } initializeBlock(() => <DeckGenerator />);
Daje Ci to przycisk „Generuj Prezentację" dostępny jednym kliknięciem wewnątrz dowolnego widoku Airtable. Wzorzec Rozszerzenia ułatwia również ponowne wykorzystanie pojedynczego klucza API w całym zespole za pośrednictwem
globalConfigPayload API 2Slides dla danych z Airtable
Endpoint
/api/v1/slides/generatepromptpagesthemelanguage{ "prompt": "Stwórz 12-slajdową prezentację przeglądu pipeline Q4 dla Acme Corp. Wartość pipeline: 420 000 $ w 7 otwartych transakcjach. Najważniejsze konto: Globex (180 000 $, etap Propozycji). Zagrożone: Initech (60 000 $, zatrzymane od 28 dni). Struktura: tytuł, streszczenie zarządcze, wykres przeglądu pipeline, konto po koncie, zagrożenia, prognoza, rekomendowane kolejne kroki, załącznik.", "pages": 12, "theme": "corporate-navy", "language": "en", "aspectRatio": "16:9", "tone": "executive", "includeSpeakerNotes": true, "webhook": "https://your-app.com/webhooks/deck-ready" }
Odpowiedź:
{ "jobId": "tl_a1b2c3d4e5", "status": "pending" }
Aby sprawdzić postęp bez webhooków, odpytuj
GET /api/v1/jobs/:idsuccessdownloadUrl.pptxpdfUrlpagesPowiązane endpointy V1 warte poznania dla przepływów pracy w Airtable:
- — główny endpoint prompt-do-prezentacji.
POST /api/v1/slides/generate - — akceptuje źródłowy PDF (np. załącznik przesłany do Airtable) i tworzy prezentację podsumowującą go.
POST /api/v1/slides/create-pdf-slides - — klonuje strukturę z istniejącej prezentacji; przydatne, gdy chcesz, aby każdy tygodniowy przegląd klienta pasował do szablonu.
POST /api/v1/slides/create-like-this - — generuje narrację dźwiękową dla każdego slajdu. Połącz z pipeline eksportu wideo dla asynchronicznych aktualizacji w stylu Loom.
POST /api/v1/slides/generate-narration - — hurtowo pobiera wszystkie obrazy i pliki głosowe poszczególnych stron jako ZIP, przydatne dla pól załączników Airtable.
GET /api/v1/slides/download-slides-pages-voices/:jobId - — endpoint odpytujący o status zadania.
GET /api/v1/jobs/:id - — przeszukiwalny katalog motywów, dzięki czemu możesz pozwolić użytkownikom Airtable wybrać motyw za pomocą pola połączonego rekordu.
GET /api/v1/themes/search?q=corporate
4 rzeczywiste wzorce prezentacji opartych na Airtable
Wzorzec 1: Przegląd rurociągu sprzedaży
Struktura bazy: tabela
TransakcjiKlientEtapARROpiekunOstatni kontaktZagrożeniaNastępny krokWyzwalacz: harmonogram piątek 8:00, filtrowanie do transakcji, gdzie
EtapKonstrukcja promptu: agregacja wszystkich pasujących rekordów do jednego promptu z sumami według etapów, listą top 5 według ARR oraz listą oznaczonych transakcji bez kontaktu przez 14+ dni. Ustaw
pages: 12theme: corporate-navytone: executiveRezultat: w każdy poniedziałek rano menedżer sprzedaży otwiera Airtable i ma prezentację zatytułowaną „Przegląd rurociągu — tydzień od {data}" już dołączoną do zsynchronizowanej tabeli „Przeglądy tygodniowe". Żadnego ręcznego kopiowania slajdów.
Wzorzec 2: Miesięczny raport z kalendarza treści
Struktura bazy: tabela
TreściTytułData publikacjiKanałWyświetleniaWspółczynnik zaangażowaniaAutorWyzwalacz: pierwszego dnia każdego miesiąca, automatyzacja działa na rekordach z ostatnich 30 dni.
Konstrukcja promptu: rankingowanie według zaangażowania, obliczenie różnicy miesiąc do miesiąca, grupowanie według kanału. Poproś model o prezentację 10-slajdową zbudowaną jako: podsumowanie, najlepsze wyniki, najsłabsze wyniki, mix kanałów, ranking autorów, rekomendacje. Ustaw
pages: 10theme: editorialincludeSpeakerNotes: trueRezultat: kierownicy ds. treści otrzymują prezentację, którą mogą zabrać na miesięczne spotkanie przeglądowe bez dotykania PowerPointa.
Wzorzec 3: Kwartalny przegląd projektów (QBR)
Struktura bazy: tabela
ProjektówKlientStatus% realizacjiKamienie miloweBlokadyWykorzystane godzinyZabudżetowane godzinyWyzwalacz: przycisk manualny w rozszerzeniu Airtable, zakres dla jednego klienta na raz.
Konstrukcja promptu: pobierz każdy projekt dla klienta z ostatniego kwartału, podsumuj według statusu realizacji, wydobądź wszelkie blokady, oblicz wykorzystanie godzin. Strukturuj prezentację jako: tytuł, kwartał w skrócie, podsumowanie projekt po projekcie, blokady + zagrożenia, prognoza na następny kwartał, rekomendowane korekty zakresu. Ustaw
pages: 14theme: consulting-slateRezultat: menedżer projektu otwiera rekord klienta, klika „Wygeneruj QBR", i ma 14-slajdową prezentację w niecałą minutę. Przeglądają, edytują w PowerPointcie jeśli trzeba i wysyłają.
Wzorzec 4: Aktualizacja CRM dla inwestorów
Struktura bazy: tabela
InwestorówFunduszZainteresowanie etapemOstatnie spotkanieNotatkiPolecenie odWyzwalacz: uruchamia się, gdy
StatusKonstrukcja promptu: zbuduj prezentację z aktualizacją firmy dostosowaną do zadeklarowanego zainteresowania etapem tego inwestora. Pobierz metryki firmy z powiązanej tabeli
KPIpages: 15theme: startup-moderncreate-like-thisRezultat: każda kontynuacja z inwestorem otrzymuje spersonalizowaną, brandowaną prezentację bez konieczności budowania przez założyciela od szablonu głównego.
Najczęściej zadawane pytania
Jak przekazać załączniki z Airtable (PDF-y, prezentacje) do API 2Slides?
Airtable udostępnia załączniki jako URL-e w ładunku rekordu. W przypadku plików PDF wywołaj
POST /api/v1/slides/create-pdf-slidessourcePdfUrlcreate-like-thisjobIdgenerateCzy mogę użyć zagregowanych i obliczonych pól Airtable w prompcie?
Tak, i powinieneś. Pola zagregowane (całkowite ARR, średnia wartość transakcji, liczba projektów zagrożonych) generują dokładnie takie podsumowania liczbowe, które czynią prezentacje użytecznymi. Odwołuj się do nich w taki sam sposób jak do innych pól w skrypcie Automation —
record.getCellValueAsString('Total ARR')Co się dzieje, gdy zadanie 2Slides się nie powiedzie?
Nieudane zadania zwracają
status: "failed"/api/v1/jobs/:iderrorDeck Status = FailedJak chronić klucz API 2Slides w skryptach Airtable?
W przypadku skryptów Automations przechowuj klucz w tabeli konfiguracyjnej z jednym rekordem i czytaj go dynamicznie, lub przekaż go jako zmienną wejściową odnoszącą się do tajemnicy środowiskowej w Zapier/Make. W przypadku Extensions użyj
globalConfig.setAsync('TWO_SLIDES_API_KEY', value)Czy wielu członków zespołu może używać jednego klucza API bez przekraczania limitów zapytań?
Tak. Limity zapytań 2Slides są hojne dla kluczy planu Team (zazwyczaj 60 zapytań/minutę, 500/godzinę), co wygodnie obsługuje 10-20 aktywnych użytkowników Airtable generujących prezentacje. W przypadku bardziej intensywnych workflow programistycznych — np. generowania prezentacji na klienta nocnie dla 2000 klientów — podziel na partie i rozłóż wywołania w czasie, lub poproś o klucz Enterprise z wyższymi limitami.
Podsumowanie
Airtable świetnie radzi sobie z przechowywaniem ustrukturyzowanych, relacyjnych danych współdzielonych przez zespół. PowerPoint doskonale sprawdza się w prezentowaniu narracji dla ludzi. Luka między nimi — luka „teraz zamień to w prezentację" — pochłaniała godziny każdego tygodnia liderów sprzedaży, marketerów treści, menedżerów produktu i założycieli firm. W 2026 roku ta luka zamyka się za pomocą pojedynczego webhooka lub pojedynczego przycisku.
Dwie metody opisane w tym przewodniku obejmują pełne spektrum: ścieżka no-code pozwala przejść do produkcji w ciągu popołudnia bez żadnej infrastruktury, a ścieżka Extension daje zespołowi naturalnie wyglądający przycisk „Wygeneruj prezentację", który znajduje się bezpośrednio w Airtable. Obie zbiegają się w tym samym kontrakcie
/api/v1/slides/generateZamień dowolny widok Airtable w PowerPoint — pobierz klucz API 2Slides i podłącz go do swoich automatyzacji Airtable w mniej niż godzinę.
About 2Slides
Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.
Try For Free