Du inser inte hur sköra dina automationer är förrän något försvinner. Ett workflow skrivs över, en ”snabb ändring” förstör ett kritiskt steg, eller så raderar någon fel sak och plötsligt bygger du om allt från minnet.
Den här Drive GitHub backups-lösningen slår hårt mot byråägare som hanterar kundsystem, men marketing ops-team och småföretagare känner av det också. När automationer sköter fakturering, lead-routing eller rapportering blir ”vi fixar det sen” snabbt till en lång natt.
Det här workflowet säkerhetskopierar dina n8n-workflows till Google Drive och GitHub enligt schema, och pingar dig i Telegram (och valfritt Discord) så att du alltid vet att det kördes. Du får se vad det gör, vad du behöver, och hur du anpassar det till din miljö.
Så fungerar automationen
Här är hela workflowet som du kommer att sätta upp:
n8n Workflow Template: Google Drive- och GitHub-backuper med Telegramlarm
flowchart LR
subgraph sg0["Manual Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Manual Trigger", pos: "b", h: 48 }
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Config", pos: "b", h: 48 }
n2@{ icon: "mdi:cog", form: "rounded", label: "Create GDrive Folder", 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/n8n.svg' width='40' height='40' /></div><br/>Get All Workflows"]
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop Over Workflows", pos: "b", h: 48 }
n5@{ icon: "mdi:cog", form: "rounded", label: "Convert to JSON File", pos: "b", h: 48 }
n6["<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/code.svg' width='40' height='40' /></div><br/>Prepare GitHub Data"]
n7@{ icon: "mdi:cog", form: "rounded", label: "Upload to Google Drive", pos: "b", h: 48 }
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/github.dark.svg' width='40' height='40' /></div><br/>Check if File Exists"]
n9@{ icon: "mdi:swap-horizontal", form: "rounded", label: "File Exists?", pos: "b", h: 48 }
n10["<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/github.dark.svg' width='40' height='40' /></div><br/>Update GitHub File"]
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/github.dark.svg' width='40' height='40' /></div><br/>Create GitHub File"]
n12["<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/merge.svg' width='40' height='40' /></div><br/>Merge GitHub Results"]
n13@{ icon: "mdi:swap-vertical", form: "rounded", label: "Mark Complete", pos: "b", h: 48 }
n14@{ icon: "mdi:swap-vertical", form: "rounded", label: "Final Summary", pos: "b", h: 48 }
n15["<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/discord.svg' width='40' height='40' /></div><br/>Notify: Discord"]
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/telegram.svg' width='40' height='40' /></div><br/>Notify: Telegram"]
n17@{ icon: "mdi:play-circle", form: "rounded", label: "Schedule Every 12 Hours", pos: "b", h: 48 }
n1 --> n2
n9 --> n10
n9 --> n11
n14 --> n16
n14 --> n15
n13 --> n4
n0 --> n1
n3 --> n4
n11 --> n12
n10 --> n12
n4 --> n14
n4 --> n5
n6 --> n8
n8 --> n9
n5 --> n7
n5 --> n6
n2 --> n3
n12 --> n13
n7 --> n12
n17 --> n1
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,n17 trigger
class n9 decision
class n6 code
classDef customIcon fill:none,stroke:none
class n3,n6,n8,n10,n11,n12,n15,n16 customIcon
Varför detta spelar roll: att förlora workflow-historik (och förtroende)
Säkerhetskopior låter tråkigt tills du behöver en. I n8n kan ett enda workflow motsvara timmar av logik, edge cases och ”snälla rör inte det här”-fixar som bara finns i någons huvud. När workflowet raderas, blir korrupt eller redigeras utan en tydlig återställning kostar det inte bara tid. Det blir missade leads, trasiga kundleveranser och den där gnagande känslan av att systemen är en miss från kaos. Även om du kan exportera manuellt glömmer du att göra det när du är upptagen – och det är precis då misstagen händer.
Det eskalerar snabbt. Här är var det oftast faller i verkliga team.
- Du exporterar bara workflows ”när du kommer ihåg”, så din backup är inaktuell den dag du behöver den.
- Manuella exporter ger inget tydligt revisionsspår, vilket gör kundjobb och interna granskningar röriga.
- Att lagra backups på ett ställe blir en single point of failure (och folk tappar faktiskt åtkomst).
- Utan körnotiser antar du att backups sker – tills de inte gör det.
Det du bygger: n8n-backups två gånger per dag till Drive + GitHub
Det här workflowet skapar ett enkelt skyddsnät runt din n8n-miljö. Det startar enligt schema (var 12:e timme som standard) eller med en manuell körning när du vill testa. n8n hämtar en lista över alla workflows från din instans och loopar sedan igenom dem för att exportera varje workflow som en JSON-fil. Dessa JSON-exporter organiseras i en tidsstämplad mapp i Google Drive, så att du kan bläddra i backups som en tidslinje. Samtidigt förbereder workflowet en GitHub-anpassad payload, kontrollerar om filen redan finns i ditt repo och uppdaterar den eller skapar den. När körningen är klar får du ett sammanfattningsmeddelande i Telegram (och valfritt Discord) så att du vet att backupen blev klar och hur mycket som behandlades.
Flödet är rakt på sak. Ett schema eller en manuell trigger drar igång, Google Drive får en prydligt namngiven mapp och n8n exporterar dina workflows en i taget. GitHub blir din andra lagringsplats med versionshistorik, och Telegram talar om resultatet.
Det du bygger
| Det som automatiseras | Det du uppnår |
|---|---|
|
|
Förväntade resultat
Säg att du hanterar 40 workflows och exporterar dem manuellt en gång i veckan ”för säkerhets skull”. Om det bara tar 2 minuter per workflow att exportera, namnge och spara korrekt blir det cirka 80 minuter per vecka, plus den mentala belastningen att komma ihåg det. Med det här workflowet är triggen omedelbar och resten kör i bakgrunden. Du kanske lägger 5 minuter på att skumma Telegram-sammanfattningen och går vidare, vilket betyder att du får tillbaka ungefär en timme varje vecka samtidigt som du har både Drive- och GitHub-täckning.
Innan du börjar
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- Google Drive för tidsstämplade mappbackups.
- GitHub för att lagra exporter med versionshistorik.
- Telegram bot-token (hämta den från BotFather i Telegram).
Svårighetsgrad: Nybörjare. Du kopplar konton, väljer en Drive-mapp och ett GitHub-repo och kör sedan en testbackup.
Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).
Steg för steg
Ett schema (eller manuell körning) startar backupen. Workflowet är satt att köra var 12:e timme som standard, och det finns även en manuell trigger så att du kan validera allt innan du litar på det.
Din backup-”container” skapas i Google Drive. En Drive-mapp skapas först, vanligtvis namngiven med en tidsstämpel, så att varje körning hålls separerad och är enkel att bläddra i senare.
n8n hämtar din workflow-lista och exporterar dem. Den hämtar alla workflows från din n8n-instans och loopar sedan igenom listan i batchar, exporterar varje workflow till en JSON-fil och laddar upp filen till Drive-mappen.
GitHub uppdateras med nya eller ändrade filer. För varje exporterat workflow kontrollerar automationen ditt repo för att se om en matchande fil finns. Om den gör det uppdateras den, annars skapas den, så att du alltid har ett korrekt repo-läge med commit-historik.
Telegram får slutstatusen. En sammanfattning byggs i slutet och skickas till Telegram (Discord ingår också om du vill), vilket gör att du kan upptäcka fel och agera direkt.
Du kan enkelt ändra schemat till dagligen, varje timme eller bara vid begäran beroende på din risktolerans. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera manuella och schemalagda triggers
Konfigurera hur workflowet startar, antingen manuellt eller enligt ett 12-timmarsschema, där båda matar in i samma konfigurationssteg.
- Öppna Manual Launch Trigger och lämna standardinställningarna för att tillåta körningar på begäran från editorn.
- Öppna Scheduled 12h Trigger och ställ in intervallregeln så att den körs var
12timme. - Bekräfta att både Manual Launch Trigger och Scheduled 12h Trigger är kopplade till Configuration Set.
Steg 2: Konfigurera backupvariabler i Configuration Set
Definiera inställningar för repo, Google Drive och notifieringar som styr resten av backupflödet.
- Öppna Configuration Set och ställ in repo_owner till
[YOUR_ID]. - Ställ in repo_name till
[YOUR_ID]och repo_path tilln8n-backup/. - Ställ in gdrive_folder_id till
[YOUR_ID]för den överordnade backupmappen. - Ställ in backup_timestamp till
{{ $now.format('yyyy-MM-dd_HH-mm-ss') }}och backup_folder_name tillwfBackup - {{ $now.format('yyyy-MM-dd_HH-mm-ss') }}. - Ställ in telegram_chat_id till
[YOUR_ID]för leverans av aviseringar.
[YOUR_ID]-platshållare i Configuration Set innan ni testar, annars kommer workflowet att fallera längre fram i flödet.Steg 3: Anslut Google Drive och hämta workflows
Skapa en ny Drive-mapp för backupen, hämta sedan workflowlistan och iterera genom varje workflow.
- Öppna Generate Drive Folder och ställ in Name till
{{ $json.backup_folder_name }}med Resource satt tillfolder. - Inloggningsuppgift krävs: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Generate Drive Folder.
- Öppna Retrieve All Workflows och säkerställ att den är ansluten efter Generate Drive Folder.
- Inloggningsuppgift krävs: Anslut era n8nApi-inloggningsuppgifter i Retrieve All Workflows.
- Öppna Iterate Workflow List för att batcha igenom de returnerade workflows utan att ändra standardalternativen.
- I Export JSON File ställer ni in Operation till
toJsonoch säkerställer att filnamnet använder{{ $json.name }}.json.
Steg 4: Konfigurera uppladdning till Google Drive och GitHub-backup
Lagra varje workflow-JSON i Drive och behåll en versionshanterad kopia i GitHub, genom att redigera befintliga filer eller skapa nya.
- Öppna Upload to Drive och ställ in Name till
{{ $('Iterate Workflow List').item.json.name }}.jsonmed mapp-ID{{ $('Generate Drive Folder').item.json.id }}. - Inloggningsuppgift krävs: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Upload to Drive.
- Öppna Assemble GitHub Payload och behåll JavaScript-koden intakt för att bygga
github_pathochworkflow_jsonför repot. - Öppna Lookup Repo File och ställ in File Path till
{{ $('Assemble GitHub Payload').item.json.github_path }}med Authentication satt tilloAuth2. - Inloggningsuppgift krävs: Anslut era githubOAuth2Api-inloggningsuppgifter i Lookup Repo File, Modify Repo File och Create Repo File.
- I Repository File Check bekräftar ni att villkoret kontrollerar att
{{ $json.content }}finns, för att routa redigeringar kontra skapanden. - Ställ in Modify Repo File att använda Operation
editoch Commit MessageUpdate: {{ $('Iterate Workflow List').item.json.name }} - {{ $('Configuration Set').item.json.backup_timestamp }}. - Ställ in Create Repo File att använda Commit Message
Create: {{ $('Iterate Workflow List').item.json.name }} - {{ $('Configuration Set').item.json.backup_timestamp }}. - Säkerställ att både Modify Repo File och Create Repo File kopplas in i Combine Repo Results före Flag Backup Done.
Steg 5: Sammanställ sammanfattning och skicka aviseringar
Skapa en sammanfattning och skicka den till Telegram och Discord när alla workflow-backuper är klara.
- Öppna Flag Backup Done och behåll fälten backup_complete, gdrive_backup och github_backup satta till
true. - Öppna Compile Summary och bekräfta att total_workflows använder
{{ $('Retrieve All Workflows').all().length }}och att gdrive_folder använder{{ $('Generate Drive Folder').first().json.name }}. - I Telegram Status Alert behåller ni HTML-meddelandet och ställer in Chat ID till
{{ $('Configuration Set').item.json.telegram_chat_id }}. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter i Telegram Status Alert.
- I Discord Status Alert behåller ni Content som konfigurerat och väljer er Guild och Channel.
- Inloggningsuppgift krävs: Anslut era discordBotApi-inloggningsuppgifter i Discord Status Alert.
Steg 6: Testa och aktivera ert workflow
Validera backuprutinen från början till slut innan ni aktiverar schemalagd körning.
- Klicka på Execute Workflow i Manual Launch Trigger för att köra en komplett backupcykel.
- Verifiera att en ny mapp visas i Google Drive och att varje workflow laddas upp av Upload to Drive.
- Bekräfta att GitHub-uppdateringar sker via Modify Repo File eller Create Repo File med förväntat format på commit-meddelandet.
- Kontrollera att Telegram och Discord tar emot sammanfattningen från Telegram Status Alert och Discord Status Alert.
- När allt är verifierat aktiverar ni workflowet så att Scheduled 12h Trigger kör backuper automatiskt.
Felsökningstips
- Google Drive-inloggningar kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först credential-väljaren i Google Drive-noden och åtkomst i ditt Google-konto.
- Om du använder Wait-noder eller extern rendering varierar bearbetningstiderna. Öka väntetiden om noder längre fram misslyckas på grund av tomma svar.
- GitHub-uppdateringar kan misslyckas på grund av repo-behörigheter eller fel branch. Kontrollera GitHub-nodens repo, branch och token-scopes innan du ändrar något annat.
Snabba svar
Cirka 5 minuter om dina konton är redo.
Nej. Du kopplar Google Drive, GitHub och Telegram och fyller sedan i några inställningar som mapp och repo.
Ja. n8n har ett gratis alternativ för egen hosting och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver även räkna in kostnader för Telegram och GitHub/Google Drive (oftast gratis för det här användningsfallet).
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen hosting på en VPS. För egen hosting är Hostinger VPS prisvärd och hanterar n8n bra. Egen hosting ger obegränsat antal körningar men kräver grundläggande serverhantering.
Ja, och det är mest konfiguration. Du kan ändra schemat i Scheduled 12h Trigger, byta notiser genom att slå av/på noderna Telegram Status Alert och Discord Status Alert, samt justera fil-/mappnamngivning i Set-noderna (som Configuration Set och Compile Summary). Vanliga justeringar är att bara backa upp utvalda workflows, ändra Drive-mappstrukturen och skriva till en annan GitHub-branch för granskning.
Oftast är det en utgången Google-auktorisering eller ett problem med Drive-scope. Återanslut Google Drive-credential i n8n, öppna sedan Drive-noden som misslyckas (Generate Drive Folder eller Upload to Drive) och bekräfta att den använder rätt credential. Om du säkerhetskopierar till en Shared Drive, se till att ditt Google-konto faktiskt har åtkomst till just den driven och den mappen.
Det klarar utan problem dussintals eller till och med några hundra workflows, så länge din n8n-instans och GitHubs rate limits är rimliga.
Ofta, ja. Zapier och Make är bra för app-till-app-workflows, men det här backupmönstret kräver loopar, filhantering, villkorsstyrt ”uppdatera vs skapa” och ett rent sätt att prata med n8n självt. n8n hanterar den typen av logik utan krystade workarounds, och egen hosting betyder att du inte betalar mer bara för att du har många workflows att säkerhetskopiera. Om ditt behov bara är ”kopiera en fil till Drive en gång i veckan” kan andra verktyg fungera fint. Men för full workflow-export plus GitHub-versionshistorik är n8n en mer naturlig match. Prata med en automationsexpert om du vill ha hjälp att välja.
När det här väl rullar slutar backups vara en uppgift och blir bakgrundsbrus. Ärligt talat är det den bästa typen av skydd: tråkigt, konsekvent och där när du behöver det.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.