Dina bästa insikter sitter fast i mötesinspelningar. Du vet att det finns bra saker i transkriberingen, men att göra om det till ett inlägg, en bildidé och en kort videoprompt blir ofta en ”någon gång”-uppgift.
Den här Fathom Google Docs-automationen träffar hårdast för konsulter som kör sessioner hela veckan. Marknadsansvariga känner också av det, och utbildare som återanvänder workshops stöter på samma vägg. Du vill ha användbart innehåll snabbt, inte ännu ett adminprojekt.
Det här arbetsflödet hämtar din senaste Fathom-transkribering, skapar ett redigeringsklart Google-dokument, genererar bild- och videoprompter och pingar Slack när videon är klar. Nedan ser du exakt vad det gör och vad du behöver för att köra det stabilt.
Så här fungerar automationsflödet
Hela n8n-flödet, från trigger till slutligt resultat:
n8n Workflow Template: Fathom till Google Docs: återanvänd transkript snabbt
flowchart LR
subgraph sg0["When chat message received Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "When chat message received", pos: "b", h: 48 }
n1@{ icon: "mdi:brain", form: "rounded", label: "Main GPT-4 Model", pos: "b", h: 48 }
n2@{ icon: "mdi:memory", form: "rounded", label: "Simple Memory", pos: "b", h: 48 }
n3@{ icon: "mdi:wrench", form: "rounded", label: "Text to Video", pos: "b", h: 48 }
n4@{ icon: "mdi:wrench", form: "rounded", label: "Video Generator", pos: "b", h: 48 }
n5@{ icon: "mdi:brain", form: "rounded", label: "Video Generator GPT Model", pos: "b", h: 48 }
n6@{ icon: "mdi:robot", form: "rounded", label: "Content Orchestrator", pos: "b", h: 48 }
n7@{ icon: "mdi:wrench", form: "rounded", label: "Content Post Generator", pos: "b", h: 48 }
n8@{ icon: "mdi:wrench", form: "rounded", label: "Text to Image", pos: "b", h: 48 }
n9@{ icon: "mdi:web", form: "rounded", label: "Get Fathom Transcript", pos: "b", h: 48 }
n10@{ icon: "mdi:wrench", form: "rounded", label: "Image Generator", pos: "b", h: 48 }
n11@{ icon: "mdi:wrench", form: "rounded", label: "Transcript to Content", pos: "b", h: 48 }
n2 -.-> n6
n8 -.-> n10
n3 -.-> n4
n10 -.-> n7
n4 -.-> n7
n1 -.-> n6
n1 -.-> n7
n9 -.-> n6
n11 -.-> n7
n7 -.-> n6
n5 -.-> n4
n5 -.-> n10
n0 --> n6
end
subgraph sg1["Subworkflow Entry Point Flow"]
direction LR
n12@{ icon: "mdi:play-circle", form: "rounded", label: "Subworkflow Entry Point", pos: "b", h: 48 }
n13@{ icon: "mdi:cog", form: "rounded", label: "Create Google Doc", pos: "b", h: 48 }
n14@{ icon: "mdi:cog", form: "rounded", label: "Insert Content into Doc", pos: "b", h: 48 }
n15@{ icon: "mdi:swap-vertical", form: "rounded", label: "Format Image Link", pos: "b", h: 48 }
n16["<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/httprequest.dark.svg' width='40' height='40' /></div><br/>Call DALL-E API"]
n17@{ icon: "mdi:cog", form: "rounded", label: "Convert Image to Binary", pos: "b", h: 48 }
n18@{ icon: "mdi:cog", form: "rounded", label: "Upload to Storage", 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/httprequest.dark.svg' width='40' height='40' /></div><br/>Fetch Generated Video"]
n21["<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/httprequest.dark.svg' width='40' height='40' /></div><br/>Call Video API"]
n22@{ icon: "mdi:swap-vertical", form: "rounded", label: "Format Video Link", pos: "b", h: 48 }
n21 --> n19
n16 --> n17
n13 --> n14
n18 --> n15
n19 --> n22
n17 --> n18
n12 --> n13
n12 --> n16
n12 --> n21
end
subgraph sg2["Flow 3"]
direction LR
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/slack.svg' width='40' height='40' /></div><br/>Video Ready"]
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 n0,n12 trigger
class n6 ai
class n1,n5 aiModel
class n3,n4,n7,n8,n10,n11 ai
class n2 ai
class n9,n16,n19,n21 api
classDef customIcon fill:none,stroke:none
class n16,n19,n21,n20 customIcon
Problemet: bra transkriberingar, noll tid att återanvända dem
En Fathom-transkribering är användbar, men den är inte ”innehåll” än. Först skummar du efter höjdpunkter. Sedan försöker du forma den till ett inlägg som inte låter som ett möte. Sen kommer extragrejerna: ett videokoncept, en bildidé och en organiserad plats att lagra allt. De flesta team slutar med att kopiera text till Google Docs, skriva om avsnitt, leta efter citatvänliga ögonblick och glömma att dela de färdiga tillgångarna. Resultatet blir ojämn publicering och en hög med inspelningar som aldrig används.
Friktionen bygger på. Här är var det oftast faller isär.
- Att hitta de starkaste 2–3 ögonblicken tar så lång tid att du skjuter upp det till nästa vecka.
- Manuell kopiera-klistra-in i Google Docs leder till rörig formatering och tappat sammanhang.
- Video- och bildidéer skrivs ner på random ställen, så du kan inte återanvända dem senare.
- Någon måste komma ihåg att posta videolänken i Slack, och ärligt talat är det där saker oftast tappas bort.
Lösningen: gör den senaste Fathom-transkriberingen till ett dokument, en bild och en videolänk
Det här flödet börjar med en enkel chattförfrågan i n8n, som ”Skapa innehåll från min senaste session”. När det triggas hämtar det din senaste Fathom-transkribering (med fokus på de senaste 7 dagarna) och använder sedan OpenAI för att analysera det som sagts och plocka ut nyckelinsikter och ”genombrottsögonblick”. Utifrån analysen tar det fram ett textutkast och skapar automatiskt ett Google-dokument som du kan redigera, återanvända och dela. Parallellt genererar det en bildprompt, skapar en social grafik via DALL·E, laddar upp den till Google Drive och bygger en ren delbar länk. Till sist skickar det en prompt för videogenerering till din videoleverantör (som Luma eller Runway), kontrollerar när resultatet är klart och notifierar Slack med den färdiga video-URL:en.
Flödet startar i chatten och delar sedan upp sig i tre innehållsspår: Google Docs för textutkastet, DALL·E för bildtillgången och ett video-API för ett kort klipp. När videon är klar får Slack länken så att du kan granska och publicera utan att jaga filer.
Det du får: automation vs. resultat
| Det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut i praktiken
Säg att du kör 3 kundsamtal i veckan och vill ha ett LinkedIn-inlägg, en grafik och en kort video per samtal. Manuellt kanske du lägger cirka 30 minuter på att gå igenom transkriberingen, 45 minuter på att skriva utkast, 20 minuter på att skriva prompter och ytterligare 15 minuter på att spåra länkar och dela uppdateringar. Det är ungefär 2 timmar per samtal, alltså cirka 6 timmar i veckan. Med det här flödet lägger du kanske 5 minuter på att skicka chattförfrågan och skumma det färdiga Google-dokumentet, medan videon genereras i bakgrunden (ofta 2–5 minuter). Ditt Slack-meddelande kommer med videolänken när den är klar.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Självhostat alternativ om du föredrar det (Hostinger fungerar bra)
- Fathom för att komma åt transkriberingar från dina inspelade möten.
- Google Docs för att lagra redigerbara innehållsutkast.
- Slack för att ta emot den färdiga videolänken.
- Google Drive för att lagra och dela genererade bilder.
- OpenAI API-nyckel (hämta den i OpenAI:s API-dashboard).
- Åtkomst till API för videogenerering (från leverantörsinställningar för Luma eller Runway).
Kunskapsnivå: Medel. Du kopplar konton, lägger in API-nycklar och bekräftar att de tre delflödena är uppsatta en gång.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så här fungerar det
En chattförfrågan sätter igång allt. Du triggar flödet via n8n:s chattgränssnitt och ber det skapa innehåll från din senaste session. Meddelandet routas till en AI-”koordinator” som avgör vilka tillgångar som ska genereras.
Transkriberingen hämtas och förstås. Flödet hämtar din senaste Fathom-transkribering (inom de senaste 7 dagarna) och skickar den till OpenAI för att extrahera teman, utmärkande ögonblick och användbara citat. Det här är den del du normalt gör när du halvläser och halvomskriver.
Tre innehållsspår kör parallellt. Ett spår skriver ett strukturerat utkast och skapar ett Google-dokument och injicerar sedan utkastet så att du har något korrekt formaterat att redigera. Ett annat spår genererar en bildprompt, begär bilden (DALL·E), konverterar den till en fil och laddar upp den till Google Drive. Det tredje spåret skapar en videoprompt, skickar den till din videoleverantör och hämtar sedan det färdiga videoresultatet.
Slack får den slutliga ”klar”-länken. När video-URL:en är sammanställd postar flödet en notis i Slack så att teamet kan granska, schemalägga eller publicera utan att leta i loggar eller flikar.
Du kan enkelt ändra vilket tidsfönster för transkriberingar som hämtas (t.ex. senaste 24 timmarna i stället för 7 dagar) och var tillgångarna postas i Slack utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: konfigurera chatttriggern
Det här arbetsflödet startar när en användare skickar ett chattmeddelande till n8n, som sedan routas till AI-koordinatorn.
- Lägg till noden Chat Input Trigger och behåll standardalternativen.
- Anslut Chat Input Trigger till Content Coordinator för att skicka användarmeddelanden till AI-orkestreringslagret.
Steg 2: anslut hämtning av Fathom-transkript
Det här steget säkerställer att arbetsflödet kan hämta det senaste transkriptet från coachningssessionen i Fathom.
- Öppna Fetch Fathom Transcript och bekräfta att URL är
https://api.fathom.ai/external/v1/meetings. - Aktivera Send Query och verifiera att frågeparametrarna inkluderar
include_summary=trueochlimit=1. - Säkerställ att Fetch Fathom Transcript är ansluten som ett verktyg till Content Coordinator.
Steg 3: sätt upp AI-koordineringslagret
AI-lagret koordinerar transkriptbearbetning och routar till specialiserade underarbetsflöden för skrivande, video och bildskapande.
- I Primary GPT Model väljer ni Model-värdet
gpt-4.1-mini. - Credential Required: Anslut era openAiApi-inloggningsuppgifter i Primary GPT Model.
- Ställ in Context Buffer Context Window Length till
2och anslut den till Content Coordinator som minne. - Anslut Primary GPT Model som språkmodell för både Content Coordinator och Post Creator Agent.
- I Visual GPT Model väljer ni Model
gpt-4.1-minioch ansluter den till Video Prompt Agent och Image Prompt Agent. - Credential Required: Anslut era openAiApi-inloggningsuppgifter i Visual GPT Model.
Steg 4: konfigurera utdata från underarbetsflöde (dokument, bilder, video)
När underarbetsflödet startar kör det tre grenar parallellt för att generera dokument, bilder och videoprompter.
- Säkerställ att Subflow Start Trigger har indata för post_title och post_content, som används senare av Google Docs.
- Subflow Start Trigger ger utdata parallellt till Generate Google Doc, DALL·E Image Request och Video Creation Request.
- I Generate Google Doc ställer ni in Title till
{{ $json.post_title }}och Folder ID till[YOUR_ID]. - I Inject Doc Content ställer ni in Operation till
updateoch Document URL till{{ $json.id }}, med infogningstext{{ $('Subflow Start Trigger').item.json.post_content }}. - I DALL·E Image Request ställer ni in URL till
https://api.openai.com/v1/images/generations, Method tillPOSToch prompt till{{ $json.output }}. - I Video Creation Request ställer ni in URL till
https://api.kie.ai/api/v1/jobs/createTaskoch skickar input.prompt som{{ $json.output }}medinput.aspect_ratiolandscape.
Steg 5: sammanställ bild- och videolänkar
Dessa noder konverterar genererade tillgångar till delbara länkar och förbereder dem för notifieringar.
- Anslut DALL·E Image Request till Image to Binary File och ställ in Operation till
toBinarymed Source Propertydata[0].b64_json. - I Upload to Drive Storage ställer ni in Drive till
My Driveoch Folder ID till[YOUR_ID]. - Credential Required: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Upload to Drive Storage.
- I Assemble Image Link mappar ni URL:en med
{{ JSON.parse($json.data.resultJson).resultUrls[0] }}. - Anslut Video Creation Request till Retrieve Video Result, och sedan till Assemble Video Link med
{{ JSON.parse($json.data.resultJson).resultUrls[0] }}.
Steg 6: konfigurera notifieringsutdata
Skicka den slutliga videolänken till Slack när tillgången är klar.
- Öppna Notify Video Ready och ställ in Text till
Din video är klar! 🎥 \n\n[Titta på videon från din coachningssession]({{ $json.videoURL }}) \n\nDet här fångar det viktigaste genombrottsögonblicket från er session. Videon visar problemet, lösningen och effekten – allt på ungefär 60 sekunder.. - Ställ in Select till
channeloch välj Channel-värdet. - Credential Required: Anslut era slackOAuth2Api-inloggningsuppgifter i Notify Video Ready.
{{ JSON.parse($json.data.resultJson).resultUrls[0] }}.Steg 7: testa och aktivera ert arbetsflöde
Validera hela pipelinen innan ni aktiverar arbetsflödet i produktion.
- Använd Chat Input Trigger för att skicka ett testmeddelande som ”Skapa innehåll från min senaste coachningssession med video och bild.”
- Bekräfta att Content Coordinator anropar Fetch Fathom Transcript, och sedan routar till Post Creator Agent och startar Subflow Start Trigger.
- Verifiera att Generate Google Doc skapar ett dokument och att Inject Doc Content infogar det transkriptbaserade innehållet.
- Kontrollera att DALL·E Image Request → Image to Binary File → Upload to Drive Storage slutförs och att Assemble Image Link innehåller en giltig URL.
- Bekräfta att Video Creation Request → Retrieve Video Result → Assemble Video Link producerar en video-URL och att Notify Video Ready publicerar den i Slack.
- När körningen lyckas, växla arbetsflödet till Active för användning i produktion.
Vanliga fallgropar
- Inloggningar för Google Docs och Google Drive kan löpa ut eller kräva specifika behörigheter. Om något slutar fungera: kontrollera först n8n:s credential-test och behörighetsscope för Google-kontot.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om noder längre ned i flödet fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in din varumärkesröst tidigt, annars kommer du redigera outputs i all evighet.
Vanliga frågor
Cirka 45 minuter om dina konton och delflöden är redo.
Nej. Du kommer mest koppla konton, klistra in API-nycklar och testa några körningar.
Ja. n8n har ett gratis självhostat 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 in OpenAI-användning (ofta några dollar för flera långa transkriberingar) plus kostnader för videogenerering (vanligtvis 0,50–2,00 USD per video).
Två alternativ: n8n Cloud (hanterat, enklast setup) eller självhosting på en VPS. För självhosting är Hostinger VPS prisvärd och hanterar n8n bra. Självhosting ger dig obegränsat antal körningar men kräver grundläggande serverhantering.
Ja, och det är en snabb ändring. Uppdatera destinationen för Slack-meddelandet ”Notify Video Ready” och justera sedan texten så att den innehåller det teamet bryr sig om (dokumentlänk, bildlänk och den sammanställda video-URL:en). Vanliga tweaks är att posta i en kundspecifik kanal, tagga en ansvarig eller bara skicka när transkriberingen innehåller vissa nyckelord.
Oftast är det en utgången token eller saknade behörigheter på Fathom-sidan. Återanslut Fathom-inloggningen i n8n och kör ett testmeddelande igen, och bekräfta sedan att hämtningen faktiskt returnerar sessioner från de senaste 7 dagarna. Om du inte har några nyliga inspelningar kan flödet se ”trasigt” ut när det egentligen bara är tom indata. Begränsningar i API:t kan också dyka upp om du kör många testkörningar tätt efter varandra.
På n8n Cloud Starter kan du köra cirka 2 500 körningar per månad, och högre planer hanterar mer. Om du självhostar finns inget tak för antal körningar (det beror på din server och API-gränser). I praktiken kör de flesta team detta några gånger per dag, och den större begränsningen är OpenAI-tokenanvändning plus väntetid i videoleverantörens kö. Flödets transkriptfönster är de senaste 7 dagarna, så det är optimerat för ”senaste sessionen”, inte massiva backfills.
Ofta, ja, eftersom det här inte är en enkel ”skicka transkribering till dokument”-zap. Du har grenlogik, flera AI-anrop, filhantering (bild till binär till Drive) plus polling av resultat från ett video-API, och n8n är byggt för den typen av flöden utan att bli en skör kedja. En annan fördel är kontroll: självhosting ger obegränsat antal körningar, vilket spelar roll när du kör det efter varje möte. Zapier eller Make kan fortfarande fungera om du skalar ner till ett output (bara dokumentet), men de multimodala delarna blir dyra och pilliga. Om du vill ha en snabb rekommendation utifrån din volym och dina verktyg, prata med en automationsexpert.
När det här väl rullar kan varje inspelad session bli ett utkast, en visuell tillgång och ett videokoncept utan att du behöver passa processen. Sätt upp det, kör det efter samtal och håll uppe tempot.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.