Dina möten spelas in, men uppföljningen blir ändå en stressig jakt. Någon måste hitta filen, transkribera den, klistra in den i ett dokument och sedan skriva en sammanfattning som inte missar det viktiga.
Den här Sheets Docs-automationen är gjord för Ops-chefer som behöver felfria mötesanteckningar, men konsulter och byråledare känner av det också. Du går från ”vi borde skriva ihop det här” till en strukturerad sammanfattning i din inkorg, med hela transkriptionen sparad i Google Docs.
Nedan ser du exakt hur flödet går från en rad i Google Sheets till en transkription i Google Docs, och vidare till en AI-sammanfattning som skickas via Gmail (och hur det förhindrar att samma inspelning bearbetas två gånger).
Så fungerar den här automatiseringen
Hela n8n-workflowen, från trigger till slutresultat:
n8n Workflow Template: Från Google Sheets till Google Docs: mötesreferat klara
flowchart LR
subgraph sg0["When clicking ‘Execute workflow’ Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "When clicking ‘Execute workf..", pos: "b", h: 48 }
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop Over Items", pos: "b", h: 48 }
n2@{ icon: "mdi:cog", form: "rounded", label: "Call 'ElevenLabs Text-to-Spe..", pos: "b", h: 48 }
n4@{ icon: "mdi:database", form: "rounded", label: "Get audio urls", pos: "b", h: 48 }
n5["<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/>Speech-to-Text"]
n6@{ icon: "mdi:database", form: "rounded", label: "Update row", pos: "b", h: 48 }
n10@{ icon: "mdi:cog", form: "rounded", label: "Add Transcript to Doc", pos: "b", h: 48 }
n11@{ icon: "mdi:cog", form: "rounded", label: "Create Doc", pos: "b", h: 48 }
n11 --> n10
n6 --> n2
n4 --> n1
n5 --> n11
n1 --> n5
n10 --> n6
n2 --> n1
n0 --> n4
end
subgraph sg1["When Executed by Another Workflow Flow"]
direction LR
n3@{ icon: "mdi:play-circle", form: "rounded", label: "When Executed by Another Wor..", pos: "b", h: 48 }
n7@{ icon: "mdi:robot", form: "rounded", label: "Transcript Analysis", pos: "b", h: 48 }
n8@{ icon: "mdi:message-outline", form: "rounded", label: "Send email", pos: "b", h: 48 }
n9["<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/markdown.dark.svg' width='40' height='40' /></div><br/>Markdown"]
n9 --> n8
n7 --> n9
n3 --> n7
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,n3 trigger
class n7 ai
class n4,n6 database
class n5 api
classDef customIcon fill:none,stroke:none
class n5,n9 customIcon
Problemet: mötesinspelningar blir inte användbara uppföljningar
Att spela in ett samtal är enkelt. Att förvandla inspelningen till något teamet faktiskt kan agera på är den jobbiga delen. Du letar upp länken, laddar upp den någonstans, väntar på en transkription och lägger sedan ännu mer tid på att skriva om den till ”beslut, åtgärdspunkter och vem som äger vad”. Under tiden tappas detaljer. Ett datum ändras. Ett löfte glöms bort. Och om du hanterar flera samtal om dagen blir den eftersläpningen ett eget projekt.
Det drar snabbt iväg. Här är var det vanligtvis faller isär.
- Att transkribera ett längre möte kan ta ungefär en timme av mänsklig uppmärksamhet när du räknar in uppladdning, kontroll och formatering.
- Råa transkriptioner är röriga, så den ”riktiga sammanfattningen” måste ändå skrivas från grunden.
- Folk glömmer att dela anteckningar, vilket gör att uppföljningar blir sena eller inkonsekventa mellan intressenter.
- Utan en enkel ”bearbetad”-status hanteras samma fil två gånger, eller ännu värre, inte alls.
Lösningen: transkribera länkar från Sheets till Docs automatiskt och mejla sammanfattningen
Det här flödet tar ett praktiskt grepp: du håller ett enkelt Google Sheet med ljud-/videolänkar och kör automatiseringen när du är redo. n8n läser raderna som inte har bearbetats, skickar varje fillänk till ElevenLabs Speech-to-Text och får tillbaka en korrekt formaterad transkription. Därefter skapar det ett nytt Google Doc (namngivet med transkriptions-ID) och lägger in hela transkriptionen så att den arkiveras på ett ställe. Sedan analyserar Google Gemini transkriptionen med en strukturerad prompt så att du inte bara får ”en sammanfattning”, utan beslut, åtgärdspunkter och nyckelpunkter. Slutligen konverterar workflowen resultatet till ett e-postvänligt format och skickar via Gmail, markerar sedan Sheet-raden som DONE och sparar Doc-ID:t för referens.
Workflowen startar när du triggar den manuellt i n8n. Därifrån loopar den igenom dina obearbetade rader i Sheets i batchar, transkriberar varje inspelning, skriver transkriptionen till Google Docs och skickar en snygg sammanfattning via e-post. Sheet:et uppdateras på slutet så att nästa körning bara hanterar nya länkar.
Det du får: automatisering vs. resultat
| Vad den här workflowen automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du kör 5 inspelade samtal i veckan och vill ha en sammanfattning efter varje. Manuellt kanske du lägger cirka 10 minuter på att hitta och ladda upp filen, och ytterligare 30 minuter på att städa upp transkriptionen och skriva en bra sammanfattning, alltså ungefär 40 minuter per samtal (cirka 3 timmar i veckan). Med den här workflowen klistrar du in varje länk i Google Sheets en gång och trycker på kör; efter bearbetningstid skapas ett Google Doc och sammanfattningen landar i Gmail. Din ”mänskliga tid” sjunker till några minuters granskning.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för egen drift om du föredrar det (Hostinger fungerar bra)
- Google Sheets för att lagra ljud-/videolänkarna.
- Google Docs (via Google Drive) för att spara transkriptioner i en mapp.
- Gmail för att leverera AI-sammanfattningen till din inkorg.
- ElevenLabs API-nyckel (hämtas från din ElevenLabs-kontopanel).
- Google Gemini API-inloggningsuppgifter (hämtas från Google AI Studio / ditt Google Cloud-projekt).
Kunskapsnivå: Mellan. Du kopplar konton, klistrar in ett Sheet-ID och ett Drive-mapp-ID och sätter en API-header (xi-api-key).
Vill du inte sätta upp detta själv? Prata med en automationsspecialist (gratis 15-minuters konsultation).
Så fungerar det
Du triggar körningen manuellt. I n8n klickar du på manuell starttrigger när du är redo att bearbeta nya inspelningar. Det är praktiskt när du vill ha kontroll (till exempel i slutet av varje dag).
Google Sheets står för kön. Workflowen läser ditt Sheet och hämtar raderna som inte har markerats som klara. Sedan bearbetar den dem en och en med en batch-loop, vilket håller flödet stabilt även när du har en längre lista.
ElevenLabs skapar transkriptionen och AI gör den till en sammanfattning. Varje ljud-/videolänk skickas till ElevenLabs Speech-to-Text via en HTTP Request-nod. När transkriptionstexten kommer tillbaka skapar workflowen ett Google Doc, lägger in transkriptionen och skickar transkriptionen till ett Gemini-analyssteg för att plocka ut beslut, åtgärdspunkter och highlights i ett konsekvent format.
Gmail levererar sammanfattningen och Sheets uppdateras. AI-utdata renderas från Markdown till HTML så att det ser korrekt formaterat ut i mejl. Sedan skickar Gmail den till vald mottagare och den ursprungliga Sheet-raden uppdateras med en DONE-markering samt Doc-ID:t för enkel uppslagning senare.
Du kan enkelt justera analysprompten så att den matchar din mötestyp (säljsamtal, standups, kundleverans) utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera den manuella starttriggern
Konfigurera den manuella triggern för att starta arbetsflödet och hämta ljudlänkar från Google Sheets.
- Lägg till och behåll Manual Start Trigger som arbetsflödets trigger (ingen konfiguration krävs).
- Koppla Manual Start Trigger till Retrieve Audio Links för att starta flödet.
- Lämna sticky note Flowpast Branding som den är för dokumentationskontext.
Steg 2: Koppla Google Sheets
Konfigurera stegen för att läsa/uppdatera kalkylarket som styr vilka ljudfiler som bearbetas.
- Öppna Retrieve Audio Links och välj ert ark i Document med
[YOUR_ID]och Sheet satt tillgid=0(cachelagrat namnFoglio1). - I Retrieve Audio Links, behåll filtret på DONE för att begränsa bearbetningen till ofärdiga rader.
- Inloggningsuppgifter krävs: Koppla era googleSheetsOAuth2Api-credentials i Retrieve Audio Links.
- Öppna Modify Sheet Row och bekräfta att Operation är
updatemed Document[YOUR_ID]och Sheetgid=0. - I Modify Sheet Row, ställ in kolumnerna som ska uppdateras: DONE =
x, DOCS ID ={{ $('Generate Document').item.json.id }}, och row_number ={{ $('Batch Iterator').item.json.row_number }}. - Inloggningsuppgifter krävs: Koppla era googleSheetsOAuth2Api-credentials i Modify Sheet Row.
AUDIO URL, DONE, DOCS ID och row_number, annars kommer uppdateringen att misslyckas.Steg 3: Sätt upp transkribering och skapande av dokument
Konfigurera batchbearbetningen, API-anropet för transkribering och pipelinen för att skapa Google Docs.
- I Batch Iterator, behåll standardinställningarna för att bearbeta en rad i taget.
- Öppna Transcribe Audio och bekräfta att URL är
https://api.elevenlabs.io/v1/speech-to-textoch att Method ärPOST. - I Transcribe Audio, ställ in body-parametrar: model_id =
scribe_v1, cloud_storage_url ={{ $json['AUDIO URL'] }}, och tag_audio_events =true. - Inloggningsuppgifter krävs: Koppla era httpHeaderAuth-credentials i Transcribe Audio.
- Öppna Generate Document och ställ in Title till
{{ $json.transcription_id }}och Folder ID till[YOUR_ID]. - Inloggningsuppgifter krävs: Koppla era googleDocsOAuth2Api-credentials i Generate Document.
- I Insert Transcript, ställ in Operation till
updateoch Document URL till{{ $json.id }}, med Text satt till{{ $('Transcribe Audio').item.json.text }}. - Inloggningsuppgifter krävs: Koppla era googleDocsOAuth2Api-credentials i Insert Transcript.
Steg 4: Sätt upp analyskedjan för underarbetsflödet
Konfigurera triggern för underarbetsflödet och AI-analysstegen som sammanfattar transkriptioner.
- Öppna Run Sub-Workflow (Configure Required) och ställ in Mode till
eachmed Wait for Sub-Workflow aktiverat. - Välj mål-underarbetsflödet i Run Sub-Workflow (Configure Required) och mappa indata text till
{{ $('Transcribe Audio').item.json.text }}. - I underarbetsflödet, behåll Subflow Entry Trigger med indatanamnet
text. - Konfigurera Analyze Transcript med Model satt till
models/gemini-2.5-prooch meddelandeinnehålletFull transcript: {{ $json.text }}. - Inloggningsuppgifter krävs: Koppla era googlePalmApi-credentials i Analyze Transcript.
Steg 5: Konfigurera leverans av utdata
Rendera AI-utdata till HTML och skicka sammanfattningsmejlet.
- I Render Markdown, ställ in Mode till
markdownToHtmloch Markdown till{{ $json.content.parts[0].text }}. - Konfigurera Dispatch Email med Send To =
[YOUR_EMAIL], Subject ==[N8N] Recap, och Message ={{ $json.data }}. - Ställ in Email Type till
texti Dispatch Email. - Inloggningsuppgifter krävs: Koppla era gmailOAuth2-credentials i Dispatch Email.
Steg 6: Testa och aktivera ert arbetsflöde
Kör ett manuellt test för att validera hela flödet och aktivera det sedan för produktionsanvändning.
- Klicka på Execute Workflow för att köra Manual Start Trigger och bearbeta en eller flera rader.
- Verifiera att Transcribe Audio returnerar en transkription och att Generate Document skapar ett nytt Google Doc med titeln
{{ $json.transcription_id }}. - Bekräfta att Insert Transcript uppdaterar dokumentet och att Modify Sheet Row markerar raden som
xmedDOCS IDifyllt. - Kontrollera att underarbetsflödet körs via Run Sub-Workflow (Configure Required) och att Dispatch Email skickar sammanfattningsmeddelandet.
- Slå på arbetsflödet med reglaget Active när end-to-end-testet lyckas.
Vanliga fallgropar
- Behörigheter i Google Sheets och Google Docs kan vara den tysta stoppklossen. Om rader inte uppdateras eller dokument inte skapas, kontrollera först det kopplade Google OAuth-kontot och åtkomsten till mål-mappen i Drive.
- Om du loopar igenom många filer kan transkribering ta längre tid än väntat. Bearbetningstider varierar, så öka vänt-/timeout-beteendet i HTTP Request-vägen om efterföljande noder ibland får tomma eller delvisa svar.
- Gemini-sammanfattningar beror mycket på systemprompten. Standard är bra, men om du vill ha din tonalitet (eller mer raka åtgärdspunkter), justera analysprompten tidigt så att du slipper redigera varje enskilt mejl.
Vanliga frågor
Cirka en timme om dina Google- och ElevenLabs-konton är redo.
Nej. Du klistrar in ID:n, kopplar konton och lägger till en API-nyckel-header i HTTP Request-noden.
Ja. n8n har ett gratis alternativ för egen drift och en gratis testperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volymer. Du behöver också räkna med användning av ElevenLabs Speech-to-Text och Gemini API, vilket beror på filernas längd och hur många transkriptioner du analyserar.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen drift på en VPS. För egen drift är Hostinger VPS prisvärd och hanterar n8n bra. Egen drift ger obegränsat antal körningar men kräver grundläggande serverhantering.
Ja, och det bör du. Byt systemprompten i Gemini-steget ”Analyze Transcript” för att ändra strukturen (invändningar i säljsamtal, standup-blockers, kundleveranser) och justera Gmail-mallen om du vill ha en kortare version för ledningen. Du kan också döpa om Google Doc med mötesmetadata i stället för transkriptions-ID genom att ändra namnfälten i ”Generate Document”. Vanliga justeringar är att lägga till ”datum för nästa möte”, tilldela ägare och skriva åtgärdspunkter som en checklista.
Oftast är det API-nyckel-headern. I HTTP Request-noden ”Transcribe Audio”, bekräfta att header-namnet är xi-api-key, att värdet är din aktuella ElevenLabs-nyckel och att anropet pekar på en giltig molnåterkomlig ljud-/videolänk. Om filen är privat kan ElevenLabs inte hämta den, så du behöver en delbar länk eller en annan intagsmetod.
Om du kör n8n med egen drift finns ingen körningsgräns (det beror främst på din server och API-gränser). På n8n Cloud beror gränsen på din plans månatliga körningar, och varje inspelning använder vanligtvis flera körningar eftersom den läser sheetet, transkriberar, skapar ett dokument, kör analys, mejlar och uppdaterar raden. I praktiken kan de flesta små team köra dussintals inspelningar i veckan utan problem och sedan skala genom att öka batchstorleken försiktigt och hålla koll på API:ernas rate limits.
Ofta ja, eftersom det här flödet har loopar, dokumentskapande och AI-formatering i flera steg som kan bli dyrt eller klumpigt i enklare verktyg. n8n ger också möjligheten till egen drift med obegränsat antal körningar, vilket spelar roll när du börjar bearbeta många inspelningar. Zapier eller Make kan fortfarande fungera bra för en väldigt liten setup, som ”ny fil i Drive → skicka till transkribering → mejla resultat”, men statusspårningen i Sheet och batchning är där n8n känns mer bekvämt. Om du är osäker, prata med en automationsspecialist och beskriv din volym och vilka verktyg du redan använder.
Du får transkriptioner sparade prydligt i Google Docs och sammanfattningar som faktiskt leder till att saker händer. Sätt upp det en gång och låt workflowen stå för minnet.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.