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

Telegram + Google Sheets: botåtkomst hålls privat

Rickard Andersson Partner, Nodenordic.se

Din ”interna” Telegram-bot är inte intern särskilt länge. En vidarebefordrad länk, ett delat användarnamn – och plötsligt kan slumpmässiga personer peta på workflows som du byggt för ditt team.

Det slår snabbt mot marketing ops– och byråteam eftersom mycket kundarbete startar i chatten. Men även founders som kör lean, och konsulter som hanterar flera konton, märker av det. En enkel Telegram whitelist-automatisering löser det utan att göra boten till ett krångligt säkerhetsprojekt.

Du får se hur detta n8n-workflow kontrollerar en allowlist i Google Sheets, blockerar okända användare och håller dina interna automatiseringar privata.

Så fungerar automatiseringen

Hela n8n-workflowet, från trigger till slutligt resultat:

n8n Workflow Template: Telegram + Google Sheets: botåtkomst hålls privat

Problemet: interna botar blir röriga – snabbt

När en Telegram-bot är kopplad till riktiga automatiseringar är varje meddelande en potentiell trigger. Det är toppen för teamet – och ärligt talat riskabelt för alla andra. En okänd användare kan spamma kommandon, skapa oönskade API-anrop eller träffa endpoints du inte förväntade dig. Även om inget ”dåligt” händer så skadar bruset i sig: loggar fylls, du lägger tid på att felsöka spökproblem och du börjar tveka att lansera hjälpsamma chattbaserade verktyg eftersom du inte kan kontrollera vem som använder dem.

Friktionen byggs på. Här är var det brister.

  • Du hamnar i att manuellt kontrollera användarnamn och säga till folk ”använd inte den boten”, vilket aldrig håller särskilt länge.
  • Varje oönskat meddelande kan trigga tjänster längre ned i kedjan, så du betalar (i tid, API-kostnader eller både och) för trafik du inte bett om.
  • Team slutar lita på interna chattverktyg när de slumpmässigt svarar fel person eller vid fel tidpunkt.
  • Att uppdatera åtkomst blir en workflow-ändring, vilket innebär förseningar, misstag och ”kan du bara lägga till en person till”-pingar hela veckan.

Lösningen: styr Telegram-åtkomst med en allowlist i Google Sheets

Det här workflowet gör din Telegram-bot till en kontrollerad ingångspunkt i stället för en öppen dörr. Det startar när någon skriver till boten. n8n hämtar avsändarens användarnamn eller ID och slår sedan upp personen i en ”Employee Lookup Table” som kan ligga i Google Sheets (och valfritt i andra datakällor som Airtable, Notion eller en intern datalagring). Om användarens status är markerad som godkänd skickas flödet vidare till botens normala beteende. Om de nekas (eller inte hittas) blockerar workflowet förfrågan och kan skicka ett kort svar som ”åtkomst nekad”.

I praktiken betyder det att boten är trevlig för ditt team och osynlig för alla andra. Du hanterar åtkomst i en enkel tabell, inte i workflow-logiken, vilket håller det strukturerat när teamet förändras.

Det du får: automatisering vs. resultat

Exempel: så kan det se ut

Säg att din interna bot triggar automatiseringar för briefs, rapportuttag och snabba AI-hjälpare, och att den i snitt får 20 meddelanden per dag. Om ens 5 av dem kommer från fel personer (eller spam) kan du bränna cirka 10 minuter varje gång på att kolla loggar, verifiera vem som skickade vad och städa upp bieffekter. Det är ungefär en timme om dagen som försvinner i brus. Med detta workflow sker ”kontroll + routning” direkt, och obehöriga användare blockeras innan något kostsamt hinner köras.

Det här behöver du

  • n8n-instans (prova n8n Cloud gratis)
  • Alternativ för self-hosting om du föredrar det (Hostinger funkar bra)
  • Telegram för att ta emot meddelanden och svara.
  • Google Sheets för att lagra din allowlist med användare.
  • Telegram bot token (hämta den från BotFather i Telegram).

Kunskapsnivå: Nybörjare. Du kopplar konton, kopierar credentials och redigerar en enkel allowlist-tabell.

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

Så fungerar det

Ett meddelande når din bot. Telegram-triggern lyssnar efter inkommande uppdateringar, så valfri DM eller kommando kan starta workflowet i realtid.

Workflowet kontrollerar vem som skickade det. n8n hämtar användarnamn/ID från Telegram-payloaden och frågar din medarbetaruppslagstabell (oftast Google Sheets, men workflowet innehåller även valfria verktyg för Airtable och Notion om din ”single source of truth” finns där).

Åtkomst routas automatiskt. En villkorskontroll plus en routnings-switch skickar godkända användare via ”beviljad”-vägen och alla andra via en nekande väg, så obehöriga meddelanden aldrig når dina interna automatiseringar.

Användaren får rätt utfall. Godkända användare fortsätter till ditt vanliga botsvar eller processer längre ned i kedjan. Nekade användare kan få ett kort svar, eller så kan du välja att inte säga något alls för att undvika att bekräfta att boten finns.

Du kan enkelt justera allowlist-logiken för att stödja roller (admin, ekonomi, konsult) utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementering

Steg 1: Konfigurera Telegram-triggern

Konfigurera arbetsflödet så att det startar när ett Telegram-meddelande kommer in.

  1. Lägg till och öppna Incoming Telegram Update.
  2. Credential Required: Anslut era telegramApi-uppgifter.
  3. Ställ in Updatesmessage för att lyssna efter nya meddelanden.
  4. Spara noden så att webhook-URL:en genereras.
Om er Telegram-bot inte tar emot meddelanden, kontrollera igen att bot-token är kopplad under noden Incoming Telegram Update och att boten har startat en chatt med användaren.

Steg 2: Anslut datakällan för medarbetarsökning

Mappa inkommande Telegram-användarnamn till interna behörighetsposter med hjälp av datatabellen.

  1. Öppna Employee Lookup Table.
  2. Ställ in Operationget.
  3. Ställ in Data Table ID[YOUR_ID].
  4. I Filters, ställ in UserName{{ $json.message.from.username }}.
  5. Bekräfta kopplingen: Incoming Telegram UpdateEmployee Lookup Table.
⚠️ Vanlig fallgrop: Om [YOUR_ID] inte ersätts med ett giltigt tabell-ID kommer sökningen inte att returnera några poster och åtkomsten kommer alltid att falla tillbaka till vägen för ej beviljad.

Steg 3: Sätt upp logik för åtkomstroutning

Routa användare baserat på Access-status från uppslagstabellen.

  1. Öppna Access Routing.
  2. Konfigurera den första regeln för att jämföra Left Value {{ $json.Access }} är lika med Right Value Granted och byt namn på utdata till Granted.
  3. Konfigurera den andra regeln för att jämföra Left Value {{ $json.Access }} är lika med Right Value Denied och byt namn på utdata till Denied.
  4. Verifiera flödet: Employee Lookup TableAccess RoutingIdle Step för Granted och → Send Denial Reply för Denied.

Access Routing skickar utdata till både Idle Step och Send Denial Reply baserat på den matchade regeln.

Steg 4: Konfigurera avslagsresponsen

Skicka ett avslagsmeddelande tillbaka till användaren när åtkomst inte beviljas.

  1. Öppna Send Denial Reply.
  2. Credential Required: Anslut era telegramApi-uppgifter.
  3. Ställ in TextAccess dinied.
  4. Ställ in Chat ID{{ $('Incoming Telegram Update').item.json.message.chat.id }}.
  5. Lämna Append Attribution inaktiverad för att matcha den givna konfigurationen.
⚠️ Vanlig fallgrop: Säkerställ att uttrycket i Chat ID pekar på Incoming Telegram Update så att svaret går till rätt användare.

Steg 5: Konfigurera valfria verktygsnoder

Dessa verktygsnoder finns för framtida utbyggnad och databerikning, men är inte anslutna i det aktuella körflödet.

  1. Öppna Utility: Retrieve Sheet Rows och välj ert Document ID och Sheet Name.
  2. Credential Required: Anslut era googleSheetsOAuth2Api-uppgifter i Utility: Retrieve Sheet Rows.
  3. Öppna Utility: Get Notion Page och ställ in ResourcedatabasePage och Operationget, och ange sedan en Page ID-URL.
  4. Credential Required: Anslut era notionApi-uppgifter i Utility: Get Notion Page.
  5. Gå igenom Utility: Slack Event Listener och Utility: Fetch Airtable Record om ni planerar att ansluta dem senare.
⚠️ Vanlig fallgrop: Utility: Slack Event Listener och Utility: Fetch Airtable Record har inga inloggningsuppgifter konfigurerade. Om ni ansluter dem måste ni först lägga till Slack- och Airtable-uppgifter.

Steg 6: Testa och aktivera ert arbetsflöde

Validera hela flödet och aktivera det sedan för produktionsbruk.

  1. Klicka på Execute Workflow och skicka ett testmeddelande till er Telegram-bot.
  2. Bekräfta att Incoming Telegram Update skickar data till Employee Lookup Table och därefter till Access Routing.
  3. För en användare markerad som Denied, verifiera att Send Denial Reply skickar meddelandet Access dinied.
  4. Om körningen lyckas, växla arbetsflödet till Active för att aktivera realtidsautomation.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Sheets-credentials kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera Google-kopplingen i n8n under Credentials och bekräfta att arket är delat med det anslutna Google-kontot.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om noder längre ned fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du redigera output för alltid.

Vanliga frågor

Hur lång tid tar det att sätta upp den här Telegram whitelist-automatiseringen?

Cirka 30 minuter om din Telegram-bot och ditt Google Sheet är klara.

Behöver jag kunna koda för att automatisera åtkomstkontroll för en Telegram-bot?

Nej. Du kommer främst att koppla konton och mappa ett par fält, som användarnamn och åtkomststatus.

Är n8n gratis att använda för det här workflowet för Telegram whitelist-automatisering?

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 användning av Google Sheets (oftast gratis) samt eventuella downstream-API:er som boten triggar.

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

Två alternativ: n8n Cloud (managed, 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 dig obegränsat antal körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här workflowet för Telegram whitelist-automatisering för rollbaserad åtkomst (admin vs. personal)?

Ja, och det är en vanlig uppgradering. Du kan lägga till en kolumn ”Roll” i Google Sheets och sedan justera Access Routing-switchen (och villkorskontrollen) så att admins och personal routas till olika vägar. Vissa team loggar också varje nekad attempt i Airtable eller ett separat ark och visar bara nekande svar för kända användare som är tillfälligt avstängda.

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

För det mesta är det ett problem med bot-token eller att fel Telegram-credentials är valda i n8n. Skapa en ny token i BotFather vid behov, uppdatera sedan Telegram-credential i n8n och testa triggern igen. Om meddelanden fortfarande inte kommer fram, bekräfta att du pratar med rätt bot och att boten får ta emot meddelanden (vissa integritetsinställningar och chattkontexter kan påverka updates). Kontrollera även n8n:s körningsloggar för att se om triggern startar men fallerar senare i routningen.

Hur många meddelanden kan den här Telegram whitelist-automatiseringen hantera?

Väldigt många. I n8n Cloud beror det på din körningsgräns, medan self-hosting främst begränsas av serverstorlek och hur tunga dina downstream-actions är. För enkla ”lookup + routning + svar” klarar de flesta små uppsättningar intern trafik utan problem, även med livliga gruppchattar.

Är den här Telegram whitelist-automatiseringen bättre än att använda Zapier eller Make?

Oftast, ja – för åtkomstspärr. n8n gör det enklare med förgrenad logik (beviljad vs. nekad vs. hittas inte), och self-hosting är viktigt om du vill ha obegränsat antal körningar. Du kan också kombinera flera uppslag (Sheets plus Airtable, till exempel) utan att tvinga verktyget att bli något det inte är. Zapier eller Make kan fortfarande funka om ditt flöde är extremt enkelt, men du kan landa i högre kostnad när volymen växer. Prata med en automationsexpert om du är osäker på vad som passar.

När allowlisten väl är på plats slutar boten vara en risk och blir ett pålitligt internt verktyg igen. Sätt upp det en gång, håll arket uppdaterat och gå vidare.

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