Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

Slack + Gmail: LinkedIn-briefar klara före samtal

Rickard Andersson Partner, Nodenordic.se

Du har ett samtal om 20 minuter. Du öppnar LinkedIn, söker upp personen, scrollar deras inlägg, tappar bort fliken, öppnar den igen och inser sedan att du fortfarande inte har något konkret att säga mer än ”såg ditt senaste inlägg”. Det är inte förberedelse. Det är panik.

Den här automationen för Slack LinkedIn-briefs träffar Customer Success Managers hårdast, men Account Managers och säljledare känner av den också. Du skriver ett Slack-kommando, och en strukturerad brief landar i Gmail med teman, frekvens och senaste höjdpunkter som du kan använda direkt.

Nedan ser du hur workflowet körs, vad det producerar och vad du behöver för att sätta upp det så att research inför samtal slutar äta upp din kalender.

Så fungerar den här automationen

Hela n8n-workflowet, från trigger till slutlig output:

n8n Workflow Template: Slack + Gmail: LinkedIn-briefar klara före samtal

Problemet: LinkedIn-research inför samtal är långsam och inkonsekvent

Att förbereda sig inför samtal borde vara lättviktigt, men LinkedIn-research blir snabbt en tidsfälla. Du söker på ett namn, gissar vilken profil som är rätt, skummar några inlägg och försöker sedan komma ihåg vad som stack ut medan du hoppar tillbaka till dina anteckningar. Och om namnet är vanligt kan du lätt läsa fel persons innehåll. Resultatet blir ojämn förberedelse: vissa samtal får riktig kontext, andra får generiska frågor för att tiden tog slut (eller tålamodet, om vi ska vara ärliga).

Friktionen byggs på. Här är var det faller isär.

  • Du lägger cirka 15 minuter per person bara på att hitta rätt profil och skanna senaste inlägg.
  • Anteckningar hamnar utspridda över Slack-meddelanden, webbläsarflikar och halvklar punktlista i ett dokument.
  • Det är lätt att missa mönster som publiceringsfrekvens eller återkommande teman, som ofta är de bästa samtalsöppnarna.
  • När du har bråttom blir dina samtalspunkter otydliga, och samtalet startar kallare än det behöver.

Lösningen: Ett Slack-kommando som mejlar en brief som är klar att använda

Det här workflowet gör om ett enkelt Slack slash-kommando till en strukturerad Gmail-brief baserad på någons senaste LinkedIn-inlägg. Du skriver /check-linkedin Full Name i Slack, och workflowet kontrollerar först att du faktiskt angav ett fullständigt namn (inte ”John”). Sedan söker det upp den mest sannolika LinkedIn-profilen, hämtar deras senaste publika inlägg (upp till de 20 senaste) och ber AI sammanfatta det som är viktigt: vad de pratar om, hur ofta de postar och vad som är värt att referera till i ett samtal. Till sist formateras allt till en HTML-mejlrapport och skickas till din inkorg, oftast inom ungefär en minut.

Workflowet startar i Slack och går in i n8n via en webhook. Apify hanterar profilidentifiering och inläggsscraping, och OpenAI sköter den tunga analysen samt ”snabbkontrollen” för validering. Gmail levererar den färdiga briefen, så den ligger där du redan tittar innan möten.

Det du får: automation kontra resultat

Exempel: så här ser det ut i praktiken

Säg att du har 6 kundavstämningar inbokade en torsdag. Om du lägger cirka 15 minuter per person på att skanna LinkedIn blir det ungefär 90 minuters research, plus den mentala belastningen av att byta flikar och skriva anteckningar. Med det här workflowet kör du 6 Slack-kommandon på kanske 2 minuter totalt, och väntar sedan på att mejlen ska komma (oftast 30–90 sekunder styck medan du gör annat). Du går in i varje samtal med samma struktur: frekvens, teman och några senaste höjdpunkter som du kan referera till på ett naturligt sätt.

Det här behöver du

  • n8n-instans (testa n8n Cloud gratis)
  • Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
  • Slack för att köra slash-kommando-triggern.
  • Apify för att hitta LinkedIn-profiler och scrapa inlägg.
  • OpenAI API-nyckel (hämta den i OpenAI-dashboarden).

Nivå: Medel. Du kopplar konton, sätter en webhook för ett Slack slash-kommando och klistrar in några inloggningsuppgifter i n8n.

Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).

Så fungerar det

Ett Slack slash-kommando triggar körningen. Du skriver /check-linkedin Full Name, Slack anropar din n8n-webhook och workflowet startar direkt. Om input är ofullständig postar det ett Slack-meddelande som ber om ett fullständigt namn.

Namnvalidering och parsning sker tidigt. En lätt AI-kontroll bekräftar att det ser ut som ett riktigt fullständigt namn, och sedan extraherar workflowet för- och efternamn så att uppslag längre fram blir mer strukturerat (och mindre felkänsligt).

Apify hittar profilen och samlar in senaste inlägg. Workflowet identifierar den mest sannolika LinkedIn-profil-URL:en, scrapar sedan de 20 senaste publika inläggen och formaterar dem till en konsekvent uppsättning fält. Den datamängden aggregeras så att analysen inte behöver hantera rörig, repetitiv råtext.

OpenAI skapar briefen och Gmail levererar den. GPT-4.1 analyserar frekvens, teman och höjdpunkter, och sedan bygger n8n en HTML-rapport och mejlar den till dig. Outputen är gjord för att snabbt kunna skummas: snabba stats först, och sedan en djupare genomgång om du vill.

Du kan enkelt ändra rapportformatet så att det matchar teamets mall för samtalsförberedelser utifrån era behov. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementation

Steg 1: konfigurera webhook-triggern

Konfigurera den inkommande webhooken för att ta emot namninput som startar arbetsflödet.

  1. Lägg till och öppna Inbound Webhook Entry.
  2. Ställ in HTTP MethodPOST.
  3. Ställ in Pathpath-placeholder-to-be-replaced-by-your-webhook och ersätt den med er riktiga endpoint innan produktion.
  4. Spara noden och kopiera produktions-URL:en till ert källsystem.
⚠️ Vanlig fallgrop: Om ni glömmer att ersätta platshållaren för path kommer er webhook-URL inte att matcha inkommande anrop.

Steg 2: sätt upp namnvalidering och Slack-notiser

Klassificera den inkommande texten som ett fullständigt namn, extrahera för-/efternamn och avisera Slack när input är ogiltig.

  1. Öppna Validate Full Name och ställ in Input Text{{ $json.body.text }}.
  2. Säkerställ att kategorierna inkluderar full-name och not-full-name exakt enligt konfigurationen.
  3. Öppna Mini GPT Classifier och bekräfta att modellen är gpt-4.1-mini.
  4. Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i Mini GPT Classifier.
  5. Öppna Extract Given and Family och ställ in Text{{ $json.body.text }}.
  6. Öppna Mini GPT Name Extractor och bekräfta att modellen är gpt-4.1-mini.
  7. Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i Mini GPT Name Extractor.
  8. Öppna Slack Notice Missing Name och ställ in Text{{ $json.body.text }} is not a full name. Please send a full name to get information..
  9. Ställ in Channel{{ $json.body.channel_id }} och behåll Authentication som oAuth2.
  10. Inloggningsuppgifter krävs: Anslut era slackOAuth2Api-inloggningsuppgifter i Slack Notice Missing Name.
  11. Bekräfta förgreningarna: Validate Full Name skickar output både till Extract Given and Family och Slack Notice Missing Name parallellt.
Om Slack-meddelanden triggas oväntat, kontrollera klassificerarens resultat i Validate Full Name och råpayloaden i webhook-testet.

Steg 3: anslut LinkedIn-sökning och scraping (Apify)

Använd Apify-actors för att hitta LinkedIn-profilens URL och skrapa senaste inläggen.

  1. Öppna Lookup LinkedIn Profile och behåll Actor ID inställt på https://console.apify.com/actors/FbqC9BRstFBddhUqj/input.
  2. Ställ in Custom Body{ "firstName": "{{ $json.output.firstName }}", "lastName": "{{ $json.output.lastName }}" }.
  3. Inloggningsuppgifter krävs: Anslut era apifyApi-inloggningsuppgifter i Lookup LinkedIn Profile.
  4. Öppna Fetch LinkedIn Profile URL och ställ in ResourceDatasets och Dataset ID{{ $json.defaultDatasetId }}.
  5. Inloggningsuppgifter krävs: Anslut era apifyApi-inloggningsuppgifter i Fetch LinkedIn Profile URL.
  6. Öppna Scrape Recent LinkedIn Posts och behåll Actor ID inställt på https://console.apify.com/actors/r4oNX7IHlW4RQAjKP.
  7. Ställ in Custom Body{ "usernames": [ "{{ $json.linkedinProfileUrl }}" ] }.
  8. Inloggningsuppgifter krävs: Anslut era apifyApi-inloggningsuppgifter i Scrape Recent LinkedIn Posts.
  9. Öppna Format Recent Posts och ställ in ResourceDatasets, Dataset ID{{ $json.defaultDatasetId }} och Limit20.
  10. Inloggningsuppgifter krävs: Anslut era apifyApi-inloggningsuppgifter i Format Recent Posts.

Steg 4: aggregera och analysera inläggsinnehåll med AI

Aggregera inläggsfält och generera den strukturerade JSON-analysen för rapporten.

  1. Öppna Aggregate Post Fields och verifiera att fälten som ska aggregeras inkluderar posted_at.date och text.
  2. Öppna Insight Briefing Agent och ställ in TextDates:\n{{ $json.date }}\n\nPosts: \n{{ $json.text }}.
  3. Säkerställ att Has Output Parser är aktiverat i Insight Briefing Agent.
  4. Öppna Structured JSON Parser och behåll Schema Type inställt på manual med det tillhandahållna JSON-schemat.
  5. Öppna GPT 4.1 Summarizer och bekräfta att modellen är gpt-4.1.
  6. Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i GPT 4.1 Summarizer.
  7. Bekräfta AI-kopplingarna: GPT 4.1 Summarizer är ansluten som språkmodell för Insight Briefing Agent och Structured JSON Parser är ansluten som dess output parser.
För AI-verktygets undernoder, som Structured JSON Parser, läggs inloggningsuppgifter till på föräldranoden. I det här arbetsflödet tillämpas inloggningsuppgifter på GPT 4.1 Summarizer, inte på själva parsern.

Steg 5: konfigurera HTML-rapport och e-postleverans

Rendera HTML-rapporten och skicka den till mål-e-postadressen.

  1. Öppna Generate HTML Report och behåll HTML-mallen enligt leveransen.
  2. Bekräfta att de dynamiska platshållarna refererar till andra noder, inklusive {{ $('Extract Given and Family').item.json.output.firstName }} och {{ $json.output.latest_post_date }}.
  3. Öppna Dispatch Email Report och ställ in Send To[YOUR_EMAIL].
  4. Ställ in Message{{ $json.html }}.
  5. Ställ in SubjectRecent LinkedIn Activity about {{ $('Fetch LinkedIn Profile URL').item.json.personName }}.
  6. Inloggningsuppgifter krävs: Anslut era gmailOAuth2-inloggningsuppgifter i Dispatch Email Report.

Steg 6: testa och aktivera ert arbetsflöde

Kör ett fullständigt test för att validera varje steg och aktivera sedan arbetsflödet för produktion.

  1. Använd test-URL:en för Inbound Webhook Entry och skicka en exempel-body som innehåller {"text":"Ada Lovelace","channel_id":"C123456"}.
  2. Verifiera att Validate Full Name routar ett giltigt namn till Extract Given and Family och inte triggar Slack Notice Missing Name.
  3. Bekräfta att Apify-noderna returnerar en profil-URL och senaste inlägg, och att Insight Briefing Agent sedan ger strukturerad JSON som output.
  4. Kontrollera det slutliga mejlet från Dispatch Email Report för en komplett HTML-rapport och korrekt ämnesrad.
  5. När allt är verifierat, slå om arbetsflödet till Active för att ta emot live-webhook-anrop.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Slack slash-kommandon kräver exakt webhook-URL och rätt appbehörigheter. Om inget triggar, kontrollera Slack-appens inställningssida för Slash Command först.
  • Om du scrapar flera profiler efter varandra kan Apify-körningar ta längre tid och LinkedIn kan rate-limita. Sprid upprepade kontroller av samma profil med några timmar om du ser tomma resultat för inlägg.
  • OpenAI-prompter som lämnas generiska kommer att låta generiska. Lägg in er tonalitet och vilken typ av ”samtalspunkter” ni vill ha (discovery-frågor, riskflaggor för förnyelse, stakeholder mapping) nära analyssteget, annars kommer du att redigera output för alltid.

Vanliga frågor

Hur lång tid tar det att sätta upp den här automationen för Slack LinkedIn-briefs?

Cirka 15 minuter om din Slack-app och dina konton är redo.

Behöver jag kunna koda för att automatisera Slack LinkedIn-briefs?

Nej. Du kopplar Slack, Gmail, Apify och OpenAI, och klistrar sedan in en webhook-URL i inställningarna för ditt Slack slash-kommando.

Är n8n gratis att använda för det här workflowet för Slack LinkedIn-briefs?

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 volymer. Du behöver också räkna in kostnader för OpenAI API och Apify-användning (det här workflowet uppskattar cirka 0,05–0,09 USD per profiltitt, beroende på aktörer och volym).

Var kan jag hosta n8n för att köra den här automationen?

Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här workflowet för Slack LinkedIn-briefs genom att lägga till ett företagsnamn för bättre matchning?

Ja, och det är en smart uppgradering för vanliga namn. Du kan justera Slack-kommandots input så att det accepterar ”Fullständigt namn + företag”, och sedan uppdatera steget för profilidentifiering så att Apify (och AI-valideringen) använder den extra kontexten vid uppslag. Vanliga anpassningar är att ändra hur många inlägg du scrapar (10 kontra 20), justera briefens sektioner (bara snabbskanning eller djupare analys) och routa rapporten till en delad inkorg i stället för en enskild mottagare.

Varför misslyckas min Slack-anslutning i det här workflowet?

Oftast är det ett problem med appbehörigheter eller OAuth-scope, eller så pekar slash-kommandot fortfarande på en gammal webhook-URL. Kontrollera Slack-appens inställningar igen och bekräfta sedan att inloggningsuppgifterna i n8n fortfarande har åtkomst till workspace där kommandot är installerat. Om workflowet körs men Slack aldrig får ett svar kan grenen för saknat namn triggas eftersom input inte tolkades som ett fullständigt namn.

Hur många profiler kan den här automationen för Slack LinkedIn-briefs hantera?

Det beror främst på din n8n-plan och dina Apify-krediter. På n8n Cloud Starter fungerar det normalt bra för jämn daglig användning, och du kan skala genom att uppgradera om du gör många uppslag. Om du self-hostar finns ingen exekveringsgräns, men serverkapaciteten spelar fortfarande roll. I praktiken kör många team från ett fåtal till några dussin kontroller per dag och följer sedan Apify-användningen eftersom scrapers är den största kostnadsdrivaren.

Är den här automationen för Slack LinkedIn-briefs bättre än att använda Zapier eller Make?

Ofta, ja, eftersom det här workflowet inte bara är ”flytta data från A till B”. Du gör villkorslogik (hantering av saknat namn), scraping i flera steg, aggregering och AI-analys med strukturerad output, där n8n brukar vara mer flexibelt och mindre frustrerande. Self-hosting-alternativet är viktigt om du vill ha obegränsade körningar utan att betala per task. Zapier eller Make kan fortfarande vara bra om du bara vill ha en enkel notis när någon postar. Prata med en automationsexpert om du vill ha hjälp att välja utifrån volym och budget.

Sätt upp det en gång, så blir dina samtalsförberedelser ett repeterbart system i stället för en sista-minuten-rusning. Workflowet gör grävandet så att du kan fokusera på samtalet.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Launch login modal Launch register modal