Dina “spara till senare”-länkar är egentligen inte sparade. De är utspridda över bokmärken, Slack-trådar, Notion-sidor och den där flikgruppen du inte vågar stänga. Och när du faktiskt behöver ett citat eller en nyckelpoäng slutar det med att du tittar om en 20-minutersvideo eller skummar igenom en lång artikel en gång till.
Om du är en marknadsförare som bygger kampanjer, en grundare som samlar konkurrensinsikter, eller en konsult som lever i Telegram, gör den här automatiseringen för Telegram Sheets summaries om länkar till en sökbar mini-kunskapsbas som du kan fråga vid begäran.
Du får lära dig vad arbetsflödet gör, vad du behöver för att köra det och hur delarna hänger ihop så att det fortsätter vara pålitligt när din researchhög växer.
Så här fungerar automatiseringen
Här är hela arbetsflödet som du kommer att sätta upp:
n8n Workflow Template: Telegram + Google Sheets: sökbara länksammanfattningar
flowchart LR
subgraph sg0["Google Sheets Flow"]
direction LR
n0@{ icon: "mdi:swap-horizontal", form: "rounded", label: "If", pos: "b", h: 48 }
n1["<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/>HTTP Request"]
n2@{ icon: "mdi:brain", form: "rounded", label: "Google Gemini Chat Model1", pos: "b", h: 48 }
n3["<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/>HTTP Request1"]
n4["<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"]
n5@{ icon: "mdi:robot", form: "rounded", label: "Information Extractor", pos: "b", h: 48 }
n6@{ icon: "mdi:brain", form: "rounded", label: "Google Gemini Chat Model2", pos: "b", h: 48 }
n7@{ icon: "mdi:robot", form: "rounded", label: "Information Extractor1", pos: "b", h: 48 }
n13@{ icon: "mdi:database", form: "rounded", label: "Append row in sheet", pos: "b", h: 48 }
n14@{ icon: "mdi:database", form: "rounded", label: "Append row in sheet1", pos: "b", h: 48 }
n15@{ icon: "mdi:database", form: "rounded", label: "Append or update row in sheet", pos: "b", h: 48 }
n16@{ icon: "mdi:play-circle", form: "rounded", label: "Google Sheets Trigger", pos: "b", h: 48 }
n17@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Filter", pos: "b", h: 48 }
n18@{ icon: "mdi:database", form: "rounded", label: "Append or update row in sheet2", pos: "b", h: 48 }
n0 --> n1
n0 --> n3
n17 --> n0
n4 --> n5
n1 --> n7
n3 --> n4
n13 --> n18
n14 --> n15
n16 --> n17
n5 --> n14
n7 --> n13
n2 -.-> n5
n6 -.-> n7
end
subgraph sg1["Telegram Flow"]
direction LR
n8["<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/telegram.svg' width='40' height='40' /></div><br/>Telegram Trigger"]
n9@{ icon: "mdi:robot", form: "rounded", label: "AI Agent", pos: "b", h: 48 }
n10@{ icon: "mdi:brain", form: "rounded", label: "Google Gemini Chat Model", pos: "b", h: 48 }
n11["<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/telegram.svg' width='40' height='40' /></div><br/>Send a text message"]
n12@{ icon: "mdi:database", form: "rounded", label: "Get row(s) in sheet in Googl..", pos: "b", h: 48 }
n9 --> n11
n8 --> n9
n10 -.-> n9
n12 -.-> n9
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 n16,n8 trigger
class n5,n7,n9 ai
class n2,n6,n10 aiModel
class n0,n17 decision
class n13,n14,n15,n18,n12 database
class n1,n3 api
classDef customIcon fill:none,stroke:none
class n1,n3,n4,n8,n11 customIcon
Varför det här är viktigt: research som du faktiskt kan hitta igen
Det är lätt att spara länkar. Det jobbiga är att hitta det nyttiga igen senare. Du skickar en YouTube-URL till dig själv, klistrar in en artikel i en anteckningsapp, kanske lägger några länkar i ett kalkylark och går vidare. En vecka senare minns du “det fanns en riktigt bra poäng i den där videon” men du kommer inte ihåg titeln, kanalen eller den exakta formuleringen. Så du letar. Du öppnar flikar igen. Du tappar fokus. Och ärligt talat: det handlar inte bara om tid. Det är den mentala friktionen av att veta att din research finns “någonstans” men inte går att använda.
Friktionen växer när du samlar länkar varje dag.
- Du tappar kontexten till varför du sparade länken, så du slutar med att konsumera samma innehåll igen.
- Manuell sammanfattning hamnar snabbt efter, vilket gör att ditt “bibliotek” blir en kyrkogård av råa URL:er.
- Sökning över bokmärken, chattappar och dokument blir inkonsekvent, och guldkornen begravs.
- När du behöver ett svar snabbt faller du tillbaka på att googla igen i stället för att återanvända det du redan samlat in.
Vad du bygger: en Telegram-researchassistent som kommer ihåg
Det här arbetsflödet ger dig en enkel vana: släpp in en länk i ett Google Sheet och låt systemet göra grovjobbet. När en ny URL dyker upp kontrollerar n8n om den redan har bearbetats. Sedan listar den ut vilken typ av länk det är. Om det är en YouTube-video hämtar den transkriberingen via ett API-anrop. Om det är en vanlig webbartikel hämtar den sidans innehåll och konverterar det till ett korrekt formaterat format som är enklare att sammanfatta. Därefter genererar en AI-modell en läsbar, strukturerad sammanfattning och plockar ut nyckeldetaljer som titel. Till sist sparar arbetsflödet allt i ett “biblioteks”-sheet och markerar den ursprungliga raden som hanterad så att du inte får dubbletter.
Den andra halvan körs i Telegram. Du skriver till boten som vanligt. Assistenten söker i dina sparade sammanfattningar i Google Sheets och svarar med bästa träff. Om inget passar säger den det, i stället för att hitta på ett svar.
Det här bygger du
| Vad som automatiseras | Vad du uppnår |
|---|---|
|
|
Förväntade resultat
Säg att du sparar 10 länkar i veckan: en mix av YouTube-videor och artiklar. Manuellt tar även en “snabb” genomgång kanske 15 minuter per länk för att skumma, fånga anteckningar och arkivera någonstans, så du lägger cirka 2,5 timmar i veckan. Med det här arbetsflödet är din manuella insats närmare 2 minuter per länk för att klistra in den i intake-sheetet, och sedan väntar du bara medan bearbetningen sker i bakgrunden. Det är ungefär 2 timmar tillbaka de flesta veckor, och dina sammanfattningar är sökbara i stället för att försvinna i en anteckningsdump.
Innan du börjar
- n8n-instans (testa n8n Cloud gratis)
- Självhostningsalternativ om du föredrar det (Hostinger fungerar bra)
- Google Sheets för intake-sheetet och sammanfattningsbiblioteket.
- Telegram för att fråga efter sammanfattningar och få svar.
- Åtkomst till AI-modell (Gemini i arbetsflödet, plus OpenAI Chat Model-noder om du vill byta modell) och nödvändig API-nyckel från din leverantörs konsol.
Svårighetsgrad: Medel. Du kopplar konton, sätter upp ett Google Sheet med rätt flikar och klistrar in credentials i n8n.
Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).
Steg för steg
En ny länk landar i ditt intake-sheet. En Google Sheets-trigger bevakar en specifik flik (Sheet2) efter nyligen tillagda rader som innehåller en YouTube-URL eller en artikel-URL. Ett snabbt filter/villkorskontroll säkerställer att raden inte redan har bearbetats.
Arbetsflödet hämtar det faktiska innehållet. Om URL:en är YouTube gör den en HTTP-request för att hämta en transkribering (via ett transcript-API-anrop). Om det är en vanlig webbsida använder den en HTTP-request för att hämta artikeln och konverterar den till Markdown, vilket gör extraheringen mycket mer konsekvent.
AI gör det till något återanvändbart. Innehållet skickas genom steg för extrahering och sammanfattning (arbetsflödet använder Google Gemini chat model-noder plus informationsutvinning). Du får en strukturerad titel, nyckelpunkter och en lättläst sammanfattning i stället för en vägg av text.
Sheets lagrar det, Telegram hämtar det. Sammanfattningen läggs till i din biblioteksflik (Sheet1) och den ursprungliga intake-raden uppdateras med status “Stored” så att den inte körs två gånger. Senare skriver du till Telegram-boten; en AI-agent söker i dina sparade sammanfattningar i Google Sheets och svarar med bästa träff.
Du kan enkelt ändra sammanfattningsstilen så att den matchar ditt anteckningsformat (punktlistor, action items, “citat värda att spara”), utifrån dina behov. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera Telegram Incoming Trigger och Sheets Row Added Trigger
Ställ in de två ingångarna: Telegram för användarfrågor och Google Sheets för nya URL:er som ska bearbetas.
- Lägg till och öppna Telegram Incoming Trigger och bekräfta att den lyssnar på Updates inställt på
message. Credential Required: Anslut era telegramApi-credentials. - Lägg till och öppna Sheets Row Added Trigger, ställ in Event på
rowAddedoch låt polling-schemat stå kvar påeveryMinute. Credential Required: Anslut era googleSheetsTriggerOAuth2Api-credentials. - I Sheets Row Added Trigger väljer ni Document och Sheet med ert Google Sheet (ersätt
[YOUR_ID]med ert kalkylblads-ID).
Steg 2: Anslut Google Sheets-noder för lagring
Konfigurera alla Google Sheets-noder som sparar sammanfattningar, flaggor och statusuppdateringar.
- Öppna Append Sheet Entry och ställ in Operation på
append. Mappa kolumner: Title till{{ $json.output.Title }}och Data till{{ $json.output['Article Refined Data'] }}. Credential Required: Anslut era googleSheetsOAuth2Api-credentials. - Öppna Append Sheet Entry B och behåll Operation som
appendmed samma kolumnmappningar:{{ $json.output.Title }}och{{ $json.output['Article Refined Data'] }}. Credential Required: Anslut era googleSheetsOAuth2Api-credentials. - Öppna Upsert Sheet Status och ställ in Operation på
appendOrUpdate. Mappa URL till{{ $('Sheets Row Added Trigger').item.json['URL '] }}och Stored till✅. Credential Required: Anslut era googleSheetsOAuth2Api-credentials. - Öppna Upsert Sheet Flag och behåll Operation som
appendOrUpdatemed samma mappningar:{{ $('Sheets Row Added Trigger').item.json['URL '] }}och✅. Credential Required: Anslut era googleSheetsOAuth2Api-credentials. - Öppna Retrieve Sheet Rows och välj samma Document och Sheet som kunskapslagret. Credential Required: Anslut era googleSheetsOAuth2Api-credentials.
Obs: Retrieve Sheet Rows är ett AI-verktyg kopplat till Conversational AI Agent, så credentials ska läggas till via den överordnade agentens verktygsanslutning, inte på själva verktyget.
Steg 3: Konfigurera URL-filtrering och routning av innehåll
Filtrera nya rader, avgör om URL:en är YouTube eller en artikel och routea sedan till rätt metod för hämtning.
- Öppna Filter Unstored Links och verifiera villkoren: URL finns
{{ $json['URL '] }}och Stored är tomt{{ $json.Stored }}. - Öppna Conditional Check och bekräfta de två contains-kontrollerna på
{{ $json['URL '] }}medyoutu.beochyoutube.com. - Öppna Transcript API Call och ställ in URL till
=Apify Actor - YouTube Transcript Ninja EndPoint URL, Method tillPOSToch JSON Body till{ "includeTimestamps": "No", "language": "English", "startUrls": [ "{{ $json['URL '] }}" ] }. - Öppna Article Fetch Request och ställ in URL till
{{ $json['URL '] }}.
⚠️ Vanlig fallgrop: Fältnamnet URL innehåller ett avslutande mellanslag. Säkerställ att kolumnrubriken i ert sheet matchar exakt, annars kommer filtren och upserts att misslyckas.
Steg 4: Sätt upp AI-extraktion för artiklar och videor
Konvertera HTML till markdown och extrahera sedan en titel och en förfinad sammanfattning med Gemini-modeller.
- Öppna Convert to Markdown och ställ in HTML till
{{ $json.data }}. - Öppna Extract Article Details och ställ in Text till
Article: {{ $json.data }}. Bekräfta att attributen Title och Article Refined Data är obligatoriska. - Öppna Extract Video Details och ställ in Text till
YouTube Video Transcript: {{ $json.transcript }}. Bekräfta att attributen Title och Article Refined Data är obligatoriska. - Säkerställ att Gemini Chat Model A är ansluten som språkmodell för Extract Article Details. Credential Required: Anslut era googlePalmApi-credentials.
- Säkerställ att Gemini Chat Model B är ansluten som språkmodell för Extract Video Details. Credential Required: Anslut era googlePalmApi-credentials.
Steg 5: Konfigurera den konversationella agenten och Telegram-svar
Låt användare ställa frågor mot den lagrade kunskapsbasen och få svar via Telegram.
- Öppna Conversational AI Agent och ställ in Text till
User Request: {{ $json.message.text }}. Behåll systemmeddelandet som instruerar agenten att svara från Google Sheet och be om ursäkt om det inte hittas. - Koppla Gemini Chat Model C som språkmodell för Conversational AI Agent. Credential Required: Anslut era googlePalmApi-credentials.
- Säkerställ att Retrieve Sheet Rows är tillagt som ett verktyg i Conversational AI Agent så att den kan söka i sheetet. Credential Required: Anslut era googleSheetsOAuth2Api-credentials i agentens verktygsanslutning.
- Öppna Telegram Reply Sender och ställ in Text till
{{ $json.output }}och Chat ID till{{ $('Telegram Incoming Trigger').item.json.message.chat.id }}. Credential Required: Anslut era telegramApi-credentials.
Steg 6: Testa och aktivera ert workflow
Validera båda ingångsvägarna (sheet-triggad bearbetning och Telegram-frågor och svar) innan ni slår på workflowet.
- Klicka Execute Workflow och lägg till en ny rad med en
URLi sheetet som övervakas av Sheets Row Added Trigger. - Verifiera att YouTube-länkar går genom Conditional Check → Transcript API Call → Extract Video Details → Append Sheet Entry → Upsert Sheet Flag.
- Verifiera att artikellänkar går genom Article Fetch Request → Convert to Markdown → Extract Article Details → Append Sheet Entry B → Upsert Sheet Status.
- Skicka ett Telegram-meddelande till er bot och bekräfta att Telegram Reply Sender returnerar ett svar baserat på innehållet i sheetet.
- När allt fungerar, växla workflowet till Active så att det körs kontinuerligt.
Felsökningstips
- Google Sheets-credentials kan löpa ut eller sakna redigeringsåtkomst till rätt kalkylark. Om append eller statusuppdateringar misslyckas, kontrollera först n8n-credential och sheetets delningsbehörigheter.
- Om du använder Wait-noder eller extern rendering varierar bearbetningstiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera output för alltid.
Snabba svar
Cirka 30 minuter om dina konton redan är konfigurerade.
Nej. Du kopplar Telegram och Google Sheets, klistrar sedan in dina AI-/transcript-credentials och justerar ett par prompter.
Ja. n8n har ett gratis självhostat alternativ och en gratis testperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna in AI-API-användning (för Gemini/OpenAI) samt eventuella transcript-API-kostnader för YouTube-bearbetning.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller självhosting på en VPS. För självhosting är Hostinger VPS prisvärd och klarar n8n bra. Självhosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det är den roliga delen. Du kan ändra prompterna i Gemini Chat Model så att den outputtar mötesanteckningar, innehållsvinklar eller “3 idéer för att återanvända detta” i stället för en generisk sammanfattning. Du kan också justera stegen Extract Article Details / Extract Video Details för att hämta specifika fält (citat, verktyg som nämns, tidsstämplar). Om du föredrar en annan modell, byt chat model-noden men behåll samma in-/ut-fält som matar append-to-Sheets-stegen.
Oftast handlar det om behörigheter eller att fel kalkylark är valt i credential. Autentisera Google på nytt i n8n och bekräfta sedan att arbetsflödet pekar på exakt rätt fil och rätt flikar (Sheet1 vs Sheet2). Kontrollera också att dina rubriker i sheetet inte har ändrats, eftersom append/upsert-steg kan misslyckas tyst när kolumner inte matchar.
Gott och väl för personliga och små team-bibliotek: dussintals länkar per dag är realistiskt, där de största begränsningarna kommer från dina AI-/transcript-leverantörer och n8n:s exekveringskapacitet.
Ofta, ja, när du går bortom ett enkelt “spara länk till sheet”. Det här arbetsflödet har grenlogik (YouTube vs artikel), flera steg för innehållsbearbetning (hämta, konvertera, extrahera) och en AI-agent som söker och svarar i Telegram. n8n hanterar den komplexiteten utan att bli en skör kedja av mini-zaps, och självhosting kan vara avgörande om du kör många exekveringar. Zapier eller Make kan fortfarande vinna för väldigt enkla tvåstegsuppgifter, eller om ditt team vill ha absolut kortast möjliga setup. Om du är osäker, prata med en automationsexpert så mappar vi det mot din volym och budget.
Dina länkar slutar vara “läs senare”-brus och blir en tillgång du kan fråga på sekunder. Sätt upp det en gång och låt sedan assistenten sköta 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.