2Slides Logo
Panduan Workflow Airtable ke Presentasi AI (2026)
2Slides Team
12 min read

Panduan Workflow Airtable ke Presentasi AI (2026)

Airtable adalah database sumber kebenaran untuk ribuan tim β€” pipeline CRM, tracker proyek, kalender konten, CRM investor, sistem inventaris. Pipeline Airtable-ke-deck 2026 mengubah tampilan Airtable apa pun menjadi deck PowerPoint lengkap dalam waktu kurang dari satu menit menggunakan dua pendekatan: (1) no-code melalui Airtable Automations + Make/Zapier + 2Slides API, ideal untuk deck per-record atau per-view (review klien mingguan, update investor bulanan); (2) Airtable Extension kustom menggunakan 2Slides V1 API, ideal untuk pembuatan deck on-demand dari dalam Airtable itu sendiri. Panduan ini membahas kedua workflow dengan kode yang berfungsi, payload 2Slides API yang tepat, dan empat pola deck berbasis Airtable nyata (review pipeline sales, laporan bulanan kalender konten, QBR tracker proyek, update CRM investor) yang dapat Anda sesuaikan dengan base Anda sendiri. Setiap pola dilengkapi dengan pemetaan field yang tepat, logika konstruksi prompt, dan strategi polling sehingga Anda dapat memasukkannya ke workspace Anda sendiri dan memiliki integrasi siap produksi pada akhir sore hari.


Arsitektur Airtable-ke-Deck 2026

Sebagian besar basis Airtable sudah mengandung 80% dari sebuah deck: angka-angka, nama-nama, tanggal, flag status. Yang kurang adalah lapisan naratif β€” headline, framing, "apa artinya ini bagi bisnis." Itulah celah yang diisi oleh generator deck berbasis large-language-model.

Arsitektur 2026 memisahkan tiga aspek:

  1. Lapisan data (Airtable) β€” record, view, filter, roll-up. Di sinilah source of truth Anda berada. Tidak ada dalam alur kerja pembuatan deck yang harus menduplikasi data ke tempat lain.
  2. Lapisan orkestrasi (Airtable Automations, Zapier, Make, atau Extension khusus) β€” penghubung yang mendengarkan trigger (tombol yang ditekan, perubahan status, cron terjadwal), menjalankan query pada record yang relevan, memformatnya menjadi prompt, dan memanggil 2Slides API.
  3. Lapisan generasi (2Slides V1 API) β€” endpoint
    /api/v1/slides/generate
    menerima prompt ditambah parameter tema dan jumlah halaman opsional, lalu secara asinkron menghasilkan file PowerPoint dengan narasi yang dihasilkan AI, chart terstruktur, catatan pembicara, dan audio narasi opsional.

Lapisan orkestrasi adalah tempat pilihan implementasi menjadi penting. Tim yang menginginkan tanpa kode menggunakan Airtable Automations + webhook Zapier. Tim yang menginginkan tombol "Generate Deck" di dalam Airtable sendiri membangun Extension khusus. Kedua jalur ini bermuara pada kontrak API yang sama, sehingga Anda dapat membuat prototipe dengan jalur no-code dan kemudian mengembangkannya ke jalur Extension.

Metode 1: Tanpa Kode (Airtable Automations + Zapier + 2Slides)

Jalur tanpa kode adalah yang tercepat untuk produksi β€” biasanya di bawah satu jam β€” dan merupakan pilihan yang tepat ketika pemicunya berbasis record (kesepakatan baru memasuki tahap "Proposal," proyek ditandai "Siap untuk QBR," kampanye mencapai akhir bulan).

Langkah 1: Siapkan base Airtable

Tambahkan tiga field ke tabel yang ingin Anda gunakan untuk menghasilkan deck:

  • Deck Status
    (single select: Queued, Generating, Ready, Failed)
  • Deck URL
    (URL)
  • Deck Job ID
    (single line text)

Field-field ini memungkinkan automasi menulis progress kembali ke record sehingga pengguna melihat deck muncul di baris yang sama dari tempat mereka memicunya.

Langkah 2: Bangun Airtable Automation

Buat automation baru dengan trigger "When record matches conditions" β€” misalnya, Deck Status is Queued. Tambahkan action "Run a script" yang memformat record menjadi 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);

Langkah 3: Kirim webhook ke Zapier (atau Make)

Tambahkan action "Send webhook" yang melakukan POST ke catch hook Zapier. Langkah kedua Zapier memanggil 2Slides API:

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" }

Response mencakup

jobId
. Simpan kembali ke record Airtable melalui action Airtable Zapier, dan atur
Deck Status
ke Generating.

Langkah 4: Tangani webhook penyelesaian

2Slides memanggil URL webhook Anda setelah pekerjaan selesai. Zap tersebut membaca

downloadUrl
dan memperbarui record Airtable dengan
Deck URL
dan
Deck Status = Ready
. Total latensi end-to-end: biasanya 40-75 detik.

Jika Anda tidak ingin menggunakan webhook, polling

/api/v1/jobs/:id
setiap 5 detik dari Zap kedua yang dipicu berdasarkan jadwal. Untuk pembahasan lebih mendalam tentang pola polling dan logika retry, lihat panduan pendamping kami tentang mengotomatisasi pembuatan presentasi dengan Python dan 2Slides API.

Metode 2: Ekstensi Airtable Kustom

Ketika Anda menginginkan tombol "Generate Deck" yang tertanam langsung di UI Airtable β€” tanpa Zap eksternal, tanpa routing webhook β€” Ekstensi kustom adalah bentuk yang tepat. Ekstensi Airtable adalah aplikasi React yang di-render di dalam base dan dapat memanggil API eksternal menggunakan

fetch
.

Berikut adalah Ekstensi minimal yang membaca record yang dipilih, memanggil

/api/v1/slides/generate
, dan melakukan polling
/api/v1/jobs/:id
hingga deck siap:

import { 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' ? 'Generating…' : 'Generate Deck'} </Button> {deckUrl && <Text>Deck ready: <a href={deckUrl}>Download</a></Text>} </Box> ); } function buildPrompt(record) { return `Create a 10-slide deck for ${record.getCellValueAsString('Account')}. Pipeline: ${record.getCellValueAsString('Pipeline Value')}. Stage: ${record.getCellValueAsString('Stage')}. Notes: ${record.getCellValueAsString('Notes')}.`; } initializeBlock(() => <DeckGenerator />);

Ini memberi Anda tombol "Generate Deck" sekali klik di dalam view Airtable mana pun. Pola Ekstensi juga memudahkan penggunaan kembali satu API key di seluruh tim Anda melalui

globalConfig
. Untuk pandangan produk-engineering yang lebih luas tentang menanamkan pembuatan deck AI ke dalam antarmuka SaaS mana pun, lihat mengintegrasikan pembuatan slide AI ke dalam produk SaaS.

Payload API 2Slides untuk Data Airtable

Endpoint

/api/v1/slides/generate
menerima struktur JSON berikut. Semua parameter bersifat opsional kecuali
prompt
, tetapi alur kerja berbasis Airtable akan mendapat manfaat dari pengaturan eksplisit untuk
pages
,
theme
, dan
language
agar output konsisten.

{ "prompt": "Buat presentasi 12 slide untuk tinjauan pipeline Q4 Acme Corp. Nilai pipeline: $420,000 dari 7 deal terbuka. Akun teratas: Globex ($180,000, tahap Proposal). Berisiko: Initech ($60,000, stagnan 28 hari). Struktur: judul, ringkasan eksekutif, grafik ikhtisar pipeline, per akun, risiko, proyeksi, rekomendasi langkah selanjutnya, lampiran.", "pages": 12, "theme": "corporate-navy", "language": "en", "aspectRatio": "16:9", "tone": "executive", "includeSpeakerNotes": true, "webhook": "https://your-app.com/webhooks/deck-ready" }

Respons:

{ "jobId": "tl_a1b2c3d4e5", "status": "pending" }

Untuk memeriksa progres tanpa webhook, lakukan polling

GET /api/v1/jobs/:id
. Respons
success
mengembalikan
downloadUrl
(file
.pptx
),
pdfUrl
(jika PDF diminta), dan
pages
(array metadata per halaman termasuk URL gambar dan suara).

Endpoint V1 terkait yang perlu diketahui untuk alur kerja Airtable:

  • POST /api/v1/slides/generate
    β€” endpoint utama dari prompt ke deck.
  • POST /api/v1/slides/create-pdf-slides
    β€” menerima PDF sumber (misalnya, lampiran Airtable yang diunggah) dan menghasilkan deck yang merangkumnya.
  • POST /api/v1/slides/create-like-this
    β€” mengkloning struktur dari deck yang sudah ada; berguna ketika Anda ingin setiap tinjauan klien mingguan mengikuti template yang sama.
  • POST /api/v1/slides/generate-narration
    β€” menghasilkan audio voiceover untuk setiap slide. Gabungkan dengan pipeline ekspor video untuk update async bergaya Loom.
  • GET /api/v1/slides/download-slides-pages-voices/:jobId
    β€” mengunduh semua gambar per halaman dan file suara secara bulk sebagai ZIP, praktis untuk field lampiran Airtable.
  • GET /api/v1/jobs/:id
    β€” endpoint polling untuk status job.
  • GET /api/v1/themes/search?q=corporate
    β€” direktori tema yang dapat dicari, sehingga Anda dapat membiarkan pengguna Airtable memilih tema melalui field linked-record.

4 Pola Deck Berbasis Airtable yang Nyata

Pola 1: Tinjauan Pipeline Penjualan

Struktur Base: tabel

Deals
dengan field untuk
Account
,
Stage
,
ARR
,
Owner
,
Last Contact
,
Risks
,
Next Step
.

Trigger: Jadwal Jumat pukul 08:00, difilter untuk deal dengan

Stage
Proposal atau Negotiation.

Konstruksi Prompt: agregat semua record yang cocok menjadi satu prompt dengan total per stage, daftar top-5 berdasarkan ARR, dan daftar yang ditandai untuk deal yang tidak disentuh dalam 14+ hari. Set

pages: 12
,
theme: corporate-navy
,
tone: executive
.

Hasil: setiap Senin pagi pemimpin penjualan membuka Airtable dan memiliki deck berjudul "Pipeline Review β€” Week of {date}" yang sudah terlampir pada tabel "Weekly Reviews" yang tersinkronisasi. Tanpa copy-paste slide manual.

Pola 2: Laporan Bulanan Kalender Konten

Struktur Base: tabel

Content
dengan
Title
,
Publish Date
,
Channel
,
Views
,
Engagement Rate
,
Author
.

Trigger: tanggal 1 setiap bulan, otomasi berjalan terhadap record dari 30 hari sebelumnya.

Konstruksi Prompt: ranking berdasarkan engagement, hitung delta month-over-month, kelompokkan per channel. Minta model untuk deck 10 slide yang terstruktur sebagai: rekap, top performers, underperformers, channel mix, leaderboard author, rekomendasi. Set

pages: 10
,
theme: editorial
,
includeSpeakerNotes: true
.

Hasil: pemimpin konten mendapat deck yang bisa mereka bawa ke rapat review bulanan tanpa menyentuh PowerPoint.

Pola 3: QBR Project Tracker

Struktur Base: tabel

Projects
dengan
Client
,
Status
,
Completion %
,
Milestones
,
Blockers
,
Hours Used
,
Hours Budgeted
.

Trigger: tombol manual di Airtable Extension, terbatas pada satu klien dalam satu waktu.

Konstruksi Prompt: tarik setiap project untuk klien dari kuartal terakhir, ringkas berdasarkan status penyelesaian, munculkan blocker apa pun, hitung utilisasi jam kerja. Struktur deck sebagai: judul, quarter at a glance, rekap project-by-project, blocker + risiko, forecast untuk kuartal berikutnya, penyesuaian scope yang direkomendasikan. Set

pages: 14
,
theme: consulting-slate
.

Hasil: PM membuka record klien, menekan "Generate QBR Deck," dan memiliki deliverable 14 slide dalam waktu kurang dari satu menit. Mereka meninjau, mengedit di PowerPoint jika diperlukan, dan mengirim.

Pola 4: Update Investor CRM

Struktur Base: tabel

Investors
dengan
Fund
,
Stage Interest
,
Last Meeting
,
Notes
,
Intro Via
.

Trigger: diaktifkan ketika

Status
berubah menjadi Scheduled Follow-Up.

Konstruksi Prompt: bangun deck company-update yang disesuaikan dengan stage interest yang dinyatakan investor tersebut. Tarik metrik perusahaan dari tabel

KPIs
yang terhubung β€” MRR, growth rate, burn, runway, headcount β€” dan masukkan ke dalam prompt. Struktur: judul, apa yang berubah sejak percakapan terakhir, update KPI, logo baru, roadmap produk, tim, the ask. Set
pages: 15
,
theme: startup-modern
, dan gunakan
create-like-this
yang mengarah ke deck sebelumnya agar setiap update investor memiliki identitas visual yang konsisten.

Hasil: setiap follow-up investor mendapat deck yang dipersonalisasi dan on-brand tanpa founder harus membangun ulang dari template master.

Pertanyaan yang Sering Diajukan

Bagaimana cara saya mengirim lampiran Airtable (PDF, deck) ke API 2Slides?

Airtable mengekspos lampiran sebagai URL dalam payload record. Untuk input PDF, panggil

POST /api/v1/slides/create-pdf-slides
dengan URL lampiran sebagai field
sourcePdfUrl
. Untuk PowerPoint yang sudah ada yang ingin Anda samakan gayanya, unduh lampiran terlebih dahulu, lalu panggil
create-like-this
dengan file upload. Kedua endpoint mengembalikan
jobId
yang Anda polling dengan cara yang sama seperti
generate
.

Apakah saya bisa menggunakan roll-up dan formula field Airtable dalam prompt?

Ya, dan sebaiknya Anda menggunakannya. Roll-up (total ARR, rata-rata ukuran deal, jumlah proyek berisiko) menghasilkan tepat jenis angka rangkuman yang membuat deck berguna. Referensikan mereka dengan cara yang sama seperti field lainnya dalam script Automation Anda β€”

record.getCellValueAsString('Total ARR')
β€” dan sematkan ke dalam string prompt.

Apa yang terjadi jika job 2Slides gagal?

Job yang gagal mengembalikan

status: "failed"
dari
/api/v1/jobs/:id
dengan field
error
yang mendeskripsikan penyebabnya (paling umum: prompt yang salah format, theme slug tidak didukung, kredit tidak cukup). Dalam workflow Airtable produksi, tangkap ini di langkah polling, set
Deck Status = Failed
pada record, dan opsional coba ulang dengan prompt yang lebih sederhana. Alokasikan satu retry per record; kegagalan persisten biasanya menunjukkan bug konstruksi prompt yang perlu dicatat.

Bagaimana cara saya menyimpan API key 2Slides agar tidak terlihat di script Airtable?

Untuk script Automations, simpan key di tabel konfigurasi single-record dan baca secara dinamis, atau kirimkan sebagai variabel input yang mereferensikan environment secret di Zapier/Make. Untuk Extensions, gunakan

globalConfig.setAsync('TWO_SLIDES_API_KEY', value)
melalui layar setup admin satu kali β€” ini menyimpan key di metadata base, bukan dalam kode yang dikontrol sumber.

Apakah beberapa anggota tim bisa berbagi satu API key tanpa terkena rate limit?

Ya. Rate limit 2Slides cukup besar untuk key paket Team (biasanya 60 request/menit, 500/jam), yang dengan nyaman mendukung 10-20 pengguna Airtable aktif yang memicu deck. Untuk workflow programatik volume tinggi β€” misalnya, menghasilkan deck per pelanggan setiap malam untuk 2.000 pelanggan β€” bagi menjadi batch dan atur jarak panggilan, atau minta key Enterprise dengan limit yang lebih tinggi.

Kesimpulan

Airtable sangat cemerlang dalam menyimpan data terstruktur, relasional, dan dibagikan ke tim. PowerPoint sangat cemerlang dalam menyampaikan narasi kepada manusia. Kesenjangan di antara keduanya β€” kesenjangan "sekarang ubah ini menjadi deck" β€” biasanya menghabiskan waktu berjam-jam setiap minggu bagi sales leader, content marketer, PM, dan founder. Di tahun 2026, kesenjangan itu tertutup dengan satu webhook atau satu tombol.

Kedua metode dalam panduan ini mencakup spektrum penuh: jalur no-code membawa Anda ke tahap produksi dalam satu sore tanpa infrastruktur sama sekali, dan jalur Extension memberikan tim Anda tombol "Generate Deck" yang terasa native yang berada langsung di dalam Airtable. Keduanya bertemu pada kontrak

/api/v1/slides/generate
yang sama, yang berarti Anda bisa mulai dengan Zapier, memvalidasi struktur prompt terhadap record nyata, dan naik ke Extension kustom setelah workflow terbukti berhasil. Empat pola di atas β€” pipeline review, content report, project QBR, investor update β€” mencakup mayoritas use case deck berbasis Airtable yang nyata, dan sengaja dibuat cukup sederhana agar bisa Anda paste ke base Anda sendiri dan diadaptasi dalam satu sore.

Ubah view Airtable apa pun menjadi PowerPoint β€” dapatkan API key 2Slides dan hubungkan ke automasi Airtable Anda dalam waktu kurang dari satu jam.

About 2Slides

Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.

Try For Free