Att skriva en bok är svårt. Men den långsammaste delen är oftast den röriga: research som lever i fem flikar, kapitelidéer i ett dokument, utkast i ett annat verktyg och ”slutgiltiga” versioner som på något sätt förökar sig över en natt.
Det är här Airtable Gemini automation verkligen levererar. Content strategists använder det för att hålla leveranser konsekventa, grundare använder det för att faktiskt få ut boken de har skjutit upp, och byråteam använder det för att slippa bygga om samma ”bokpipeline” för varje kund.
Du triggar en åtgärd från Airtable, och n8n koordinerar resten: bokresearch, 7–10 kapitel, research på kapitelnivå och fullständiga kapitelutkast. I en och samma bas. Du får se hur det fungerar, vad du behöver och fallgroparna som brukar ställa till det.
Så fungerar den här automationen
Hela n8n-workflowen, från trigger till slutresultat:
n8n Workflow Template: Airtable + Google Gemini: bokkapitel klara åt dig
flowchart LR
subgraph sg0["AI Agent Flow"]
direction LR
n0["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/webhook.dark.svg' width='40' height='40' /></div><br/>Webhook"]
n1@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Switch", pos: "b", h: 48 }
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable"]
n3@{ icon: "mdi:robot", form: "rounded", label: "AI Agent", pos: "b", h: 48 }
n4@{ icon: "mdi:brain", form: "rounded", label: "Google Gemini Chat Model", pos: "b", h: 48 }
n5@{ icon: "mdi:wrench", form: "rounded", label: "Perplexity", pos: "b", h: 48 }
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable1"]
n7["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable2"]
n8@{ icon: "mdi:robot", form: "rounded", label: "Basic LLM Chain", pos: "b", h: 48 }
n9@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model", pos: "b", h: 48 }
n10@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser", pos: "b", h: 48 }
n11@{ icon: "mdi:swap-vertical", form: "rounded", label: "Edit Fields", pos: "b", h: 48 }
n12@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split Out", pos: "b", h: 48 }
n13["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable3"]
n14["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable4"]
n15["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable5"]
n16@{ icon: "mdi:robot", form: "rounded", label: "AI Agent1", pos: "b", h: 48 }
n17@{ icon: "mdi:brain", form: "rounded", label: "Google Gemini Chat Model1", pos: "b", h: 48 }
n18@{ icon: "mdi:wrench", form: "rounded", label: "Perplexity1", pos: "b", h: 48 }
n19["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable6"]
n20["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable7"]
n21@{ icon: "mdi:robot", form: "rounded", label: "Basic LLM Chain1", pos: "b", h: 48 }
n22@{ icon: "mdi:brain", form: "rounded", label: "Google Gemini Chat Model2", pos: "b", h: 48 }
n23["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/airtable.svg' width='40' height='40' /></div><br/>Airtable8"]
n1 --> n2
n1 --> n7
n1 --> n15
n1 --> n20
n0 --> n1
n3 --> n6
n2 --> n3
n16 --> n19
n7 --> n8
n13 --> n14
n15 --> n16
n20 --> n21
n12 --> n13
n5 -.-> n3
n11 --> n12
n18 -.-> n16
n8 --> n11
n21 --> n23
n9 -.-> n8
n4 -.-> n3
n10 -.-> n8
n17 -.-> n16
n22 -.-> n21
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n3,n8,n10,n16,n21 ai
class n4,n9,n17,n22 aiModel
class n5,n18 ai
class n1 decision
class n2,n6,n7,n13,n14,n15,n19,n20,n23 database
class n0 api
classDef customIcon fill:none,stroke:none
class n0,n2,n6,n7,n13,n14,n15,n19,n20,n23 customIcon
Problemet: bokutkast faller isär mellan verktyg
Du börjar med en stark idé. Sedan börjar spretigheten. Research klistras in i ett dokument ”så länge”, kapitelrubriker hamnar i en anteckningsapp och utkast skrivs utan rätt kontext eftersom bakgrundsresearchen inte ligger bredvid kapitelbriefen. Senare läser du om allt bara för att komma ihåg vad du menade. Lägg till en deadline, och processen blir till frenetiskt kontextbyte – och det är ärligt talat där kvaliteten dör. Tidskostnaden är inte bara skrivandet. Det är att hålla allt synkat.
Det går fort att det blir mycket. Här är var det brukar braka ihop.
- Kapitelupplägg glider från bokens ursprungliga positionering, så du lägger timmar på att skriva om ”för att få det att passa”.
- Research görs om eftersom ingen hittar senaste versionen, särskilt när du letar exempel och fallstudier.
- Utkast skapas innan researchen är mogen, vilket gör att du redigerar samma avsnitt tre gånger.
- Manuell copy-paste mellan Airtable, dokument och AI-chattverktyg skapar formateringsproblem och missade fält.
Lösningen: generera research, kapitel och utkast från Airtable
Den här workflowen gör Airtable till kontrollpanelen för din bok. Du uppdaterar ett enda fält (en ”Action”-väljare) i en bok- eller kapitelpost, och en Airtable-automation anropar en n8n-webhook med record ID och den action du vill köra. Därifrån routar n8n begäran till rätt spår: generera research på boknivå, generera 7–10 kapitel, göra djup research för ett kapitel eller skriva kapitelutkastet. Varje resultat skrivs tillbaka i samma Airtable-post, så du vet alltid vad som är aktuellt och vad som är nästa steg. Sedan återställer workflowen Action-fältet till ”Idle”, vilket förhindrar oavsiktliga omkörningar och håller din bas strukturerad.
Workflowen startar med en webhook som triggas från Airtable. n8n läser ditt action-val och hämtar rätt bok- eller kapitelpost. Google Gemini (och en LLM-kedja) genererar research, upplägg och utkast, och sedan uppdateras Airtable så att allt ligger på ett ställe.
Det här får du: automation vs. resultat
| Vad den här workflowen automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut i praktiken
Säg att du bygger en fackbok på 9 kapitel. Manuellt ser en typisk genomgång ut så här: 45 minuter med anteckningar för bokresearch, sedan cirka 30 minuter per kapitel för att skapa upplägg, plus ytterligare 45 minuter per kapitel för att samla exempel och källor. Det är ungefär 18 timmar innan du ens har skrivit ett riktigt utkast. Med den här workflowen väljer du ”Generate Book Details” en gång, sedan ”Generate Chapters”, och därefter kör du ”Generate Chapter Research” och ”Generate Chapter Content” per kapitel. Din egen insats blir närmare 10 minuter per körning (mest granskning och justering), så du får samma grundmaterial på ett par fokuserade timmar i stället för att tappa en hel vecka.
Det du behöver
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- Airtable för att lagra bok- och kapitelposter.
- Google Gemini för att generera research, upplägg och kapitelutkast.
- Perplexity API-nyckel (hämta den i dina Perplexity API-inställningar).
Svårighetsgrad: Medel. Du kopplar Airtable + AI-credentials och klistrar in ett kort Airtable-automationskript, men du behöver inte skriva ”riktig kod”.
Vill du inte sätta upp det här själv? Prata med en automationsspecialist (gratis 15-minuters konsultation).
Så fungerar det
Airtable triggar körningen. En Airtable-automation bevakar Action-fältet (som ”Generate Book Details”) och anropar sedan din n8n-webhook med recordId och action.
n8n routar begäran. En Switch-nod skickar körningen till rätt gren, så att bokresearch inte råkar starta när du egentligen ville skapa utkast för ett kapitel.
AI genererar rätt output. Beroende på action genererar Gemini bokresearch, ett kapitelupplägg med 7–10 kapitel, research på kapitelnivå med berättelser och fallstudier, eller ett komplett kapitelutkast med den sparade kontexten.
Allt sparas tillbaka i Airtable. Workflowen uppdaterar bok- eller kapitelposten med den genererade texten och återställer Action till Idle, så att din bas förblir lättöverskådlig.
Du kan enkelt ändra Action-alternativen för att lägga till nya faser (som ”Generate Marketing Blurb”) utifrån dina behov. Se hela implementationsguiden nedan för anpassningsmöjligheter.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera webhook-triggern
Konfigurera den inkommande förfrågan som startar workflowet och skickar med åtgärden och post-ID.
- Välj Incoming Webhook Trigger och ställ in Path till
ai-book. - Säkerställ att er förfrågan innehåller query-parametrar för
actionochrecordIdså att routingen blir korrekt i nästa steg. - Koppla Incoming Webhook Trigger till Route by Action som visas i workflowet.
?action=bookDetails&recordId=rec123 för att validera routingen tidigt.Steg 2: Anslut Airtable-datakällor
Alla datain- och utdata lagras i Airtable. Anslut autentisering och verifiera val av base/tabell i alla Airtable-noder.
- I Fetch Airtable Record, ställ in ID till
={{ $json.query.recordId }}och välj er Publishing Database-base samt Books-tabell. Credential Required: Anslut era airtableOAuth2Api-credentials. - För de andra Airtable-noderna (Update Book Research, Load Book For Chapters, Create Chapter Records, Reset Book Action, Load Chapter For Research, Update Chapter Research, Load Chapter For Content, Update Chapter Content), välj rätt base/tabell-kombination och bekräfta att mappningsfälten matchar er schema. Credential Required: Anslut era airtableOAuth2Api-credentials.
- Verifiera viktiga fältuttryck som Update Book Research → Research till
={{ $json.output }}och Update Chapter Content → Chapter Content till={{ $json.text }}.
Steg 3: Sätt upp åtgärdsroutern
Noden Route by Action skickar inkommande förfrågningar till rätt gren baserat på query string.
- Öppna Route by Action och bekräfta att varje regel använder
={{ $json.query.action }}med dessa värden:bookDetails,generateChapters,generateChapterResearch,generateChapterContent. - Bekräfta att utgående kopplingar matchar flödet: Route by Action → Fetch Airtable Record, Load Book For Chapters, Load Chapter For Research och Load Chapter For Content.
Steg 4: Konfigurera AI-vägen för bokresearch
Den här vägen skapar en researchbrief för boken och skriver tillbaka den till Airtable.
- I Book Research Agent, ställ in fältet Text till
=This is the idea: {{ $json.Idea }}. - Anslut språkmodellen: Gemini Chat Model är länkad som AI-modell för Book Research Agent. Credential Required: Anslut era googlePalmApi-credentials.
- Koppla verktyget: Perplexity Research Tool är länkat som AI-verktyg för Book Research Agent. Credential Required: Anslut era httpHeaderAuth-credentials. Lägg till credentials i Perplexity Research Tool, men användningen styrs av Book Research Agent.
- Säkerställ att Update Book Research skriver utdata med Research satt till
={{ $json.output }}och Action satt tillIdle.
Steg 5: Sätt upp generering av kapitelöversikt och skapande av poster
Den här vägen genererar en strukturerad kapitellista och skapar kapitelposter i Airtable.
- I Generate Chapter Outline, ställ in prompten i Text till
=Give chapters for this book idea: {{ $json.Idea }} ----- Resrearch on the topic: {{ $json.Research }}och låt Has Output Parser vara aktiverad. - OpenAI Chat Engine är ansluten som språkmodell för Generate Chapter Outline. Credential Required: Anslut era openAiApi-credentials.
- Parse Chapter Schema är ansluten som output-parser för Generate Chapter Outline. Konfigurera dess schema exakt enligt det som angivits. Lägg vid behov till credentials i parent-noden (Generate Chapter Outline), inte i parsern.
- I Map Chapter Fields, ställ in chapters till
={{ $json.output.chapters }}och Book till["{{ $('Incoming Webhook Trigger').item.json.query.recordId }}"]. - I Split Chapters, ställ in Field To Split Out till
chapters, och mappa sedan till Airtable via Create Chapter Records med Chapter Name →={{ $json.title }}och Description →={{ $json.description }}. - Avsluta med Reset Book Action genom att sätta Action till
Idleoch id till={{ $('Incoming Webhook Trigger').item.json.query.recordId }}.
Steg 6: Konfigurera kapitelresearch och generering av utkast
Dessa två vägar genererar kapitelresearch och skriver sedan tillbaka hela kapitelinnehållet till Airtable.
- I Chapter Research Agent, bekräfta att fältet Text är satt till
=Chapter Name: {{ $json['Chapter Name'] }} Chapter Description: {{ $json.Description }} Name of the book: {{ $json.Idea[0] }} ---- Use Perplexity Research Tool 2 religiously. - Gemini Chat Model 2 är ansluten till Chapter Research Agent. Credential Required: Anslut era googlePalmApi-credentials.
- Perplexity Research Tool 2 är ansluten som AI-verktyg. Credential Required: Anslut era httpHeaderAuth-credentials. Lägg till credentials i verktyget, men det anropas av Chapter Research Agent.
- Säkerställ att Update Chapter Research skriver Research till
={{ $json.output }}och Action tillIdle. - I Generate Chapter Draft, behåll prompten i Text exakt som den är definierad, inklusive
{{ $json.Idea[0] }},{{ $json['Book Research'][0] }}och{{ $json['Chapter Name'] }}. - Gemini Chat Model 3 är ansluten som språkmodell för Generate Chapter Draft. Credential Required: Anslut era googlePalmApi-credentials.
- I Update Chapter Content, mappa Chapter Content till
={{ $json.text }}och id till={{ $('Incoming Webhook Trigger').item.json.query.recordId }}.
Steg 7: Testa och aktivera ert workflow
Kör ett manuellt test för varje åtgärdsgren för att bekräfta Airtable-uppdateringar och AI-output innan ni slår på workflowet.
- Använd test-URL:en för Incoming Webhook Trigger för att skicka en förfrågan med
action=bookDetailsoch ett giltigtrecordId, och verifiera sedan att Update Book Research skriver till Books-tabellen. - Upprepa tester för
generateChapters,generateChapterResearchochgenerateChapterContentför att bekräfta att varje gren körs från början till slut. - En lyckad körning ska skapa kapitelposter, uppdatera researchfält och fylla kapitelinnehåll i Airtable med text som inte är tom.
- När allt är validerat, växla workflowet till Active för produktionsanvändning.
Vanliga fallgropar
- Airtable OAuth-credentials kan löpa ut eller sakna åtkomst till basen efter ändringar i workspace. Om saker slutar fungera: kontrollera först Airtable-anslutningen i n8n under Credentials, och bekräfta sedan att rätt Base och Table är valda i varje Airtable-nod.
- Om du förlitar dig på extern research (Perplexity via HTTP-verktyg) varierar svarstiderna. Öka eventuella vänt-/timeout-inställningar i n8n om efterföljande noder ibland kör med tom researchtext.
- Standardprompter för AI är generiska. Lägg in din ton, läsnivå och regler för ”vad som inte ska göras” i steget för bokresearch, annars kommer du att redigera varje kapitelutkast manuellt.
Vanliga frågor
Cirka 30–60 minuter om din Airtable-bas är redo och du har API-nycklar.
Nej. Du klistrar in ett litet Airtable-automationskript och kopplar credentials i n8n.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna med kostnader för Gemini- och Perplexity-API-användning.
Två alternativ: n8n Cloud (hanterad, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och klarar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serveradministration.
Ja, och det är hela poängen. Du kan ändra antal kapitel och strukturen i prompten ”Generate Chapter Outline”, och sedan justera fältmappningen i ”Map Chapter Fields” så att Airtable lagrar exakt det du vill ha. För tonalitet: lägg in ramar tidigt i prompterna ”Book Research Agent” och ”Generate Chapter Draft” (ton, målgrupp, förbjudna fraser, citeringsstil). Om du vill lägga till en ny fas som ”Generate Back Cover Copy” lägger du till ett nytt Action-värde i Airtable och routar det via Switch-noden ”Route by Action” till ett nytt LLM-steg.
Oftast handlar det om utgången OAuth-åtkomst eller att noden pekar på fel Base/Table efter att du kopierat blueprinten. Återanslut Airtable i n8n Credentials och öppna sedan varje Airtable-nod och bekräfta att den använder förväntad bas och rätt tabell (”Book” vs ”Chapter”). Kontrollera också inputs i Airtable Automation: om recordId inte skickas korrekt kommer hämtningssteget att fallera även om dina credentials är korrekta.
I praktiken fungerar dussintals per bok utan problem; de verkliga begränsningarna är din tillåtna mängd n8n-körningar (i Cloud) och din budget för AI-API-användning.
Ofta ja, eftersom den här workflowen har förgreningslogik (fyra olika actions), flera Airtable-läs-/skrivsteg och AI-kedjor som gynnas av tätare kontroll. n8n ger dig också self-host-alternativet, vilket spelar roll när du kör många kapitelkörningar och inte vill att varje körning ska mätas som en premiumtask. Zapier och Make fungerar fortfarande bra för enklare automationer som ”när en post ändras, skicka ett meddelande”. För flerfasig bokgenerering blir det ofta rörigt snabbt. Om du vill att någon rimlighetskontrollerar din stack innan du bestämmer dig, prata med en automationsspecialist.
När det här väl är igång blir din Airtable-bas projektets ryggrad. Workflowen tar hand om de repetitiva delarna, så att du kan lägga tiden på att redigera, förbättra och publicera.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.