Dina automationer rullar på… tills den dag något redigeras, skrivs över eller raderas och du inte med säkerhet kan svara på: ”Vad ändrades?” Att hitta rätt version blir en skattjakt.
Det här är den typen av röra som ops-ansvariga upptäcker vid en incidentgenomgång. Byråägare känner av det när en kund ber om en revisionskedja. Och upptagna marknadsteam som kör många experiment behöver fortfarande en Dropbox Airtable-backup de kan lita på.
Det här flödet ger dig versionshanterade exporter i Dropbox och en live-inventering i Airtable som hålls uppdaterad automatiskt, så att du kan återställa snabbt och bevisa vad som var aktuellt vid vilken tidpunkt som helst.
Så här fungerar den här automationen
Hela n8n-flödet, från trigger till slutligt resultat:
n8n Workflow Template: Dropbox + Airtable: spåra säkerhetskopior enkelt
flowchart LR
subgraph sg0["On clicking 'execute' Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "On clicking 'execute'", pos: "b", h: 48 }
n1@{ icon: "mdi:code-braces", form: "rounded", label: "Function", pos: "b", h: 48 }
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "SplitInBatches", pos: "b", h: 48 }
n3@{ icon: "mdi:swap-horizontal", form: "rounded", label: "IF", pos: "b", h: 48 }
n4@{ icon: "mdi:cog", form: "rounded", label: "NoOp", 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/airtable.svg' width='40' height='40' /></div><br/>Airtable"]
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/airtable.svg' width='40' height='40' /></div><br/>Airtable1"]
n7["<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/airtable.svg' width='40' height='40' /></div><br/>Airtable2"]
n8@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set", pos: "b", h: 48 }
n9@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set1", 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/httprequest.dark.svg' width='40' height='40' /></div><br/>Get All Workflows"]
n11@{ icon: "mdi:code-braces", form: "rounded", label: "Prepare data", pos: "b", h: 48 }
n12@{ icon: "mdi:code-braces", form: "rounded", label: "Prepare data1", pos: "b", h: 48 }
n13@{ icon: "mdi:cog", form: "rounded", label: "Cron", pos: "b", h: 48 }
n14@{ icon: "mdi:cog", form: "rounded", label: "Move Binary Data", 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/dropbox.svg' width='40' height='40' /></div><br/>Dropbox"]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Get Workflow Details"]
n17["<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/>Get file link"]
n18@{ icon: "mdi:swap-horizontal", form: "rounded", label: "IF Airtable record exists?", pos: "b", h: 48 }
n3 --> n4
n3 --> n2
n8 --> n6
n13 --> n10
n9 --> n7
n15 --> n17
n5 --> n18
n1 --> n2
n6 --> n3
n7 --> n3
n11 --> n8
n17 --> n5
n12 --> n9
n2 --> n16
n14 --> n15
n10 --> n1
n16 --> n14
n0 --> n10
n18 --> n11
n18 --> n12
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 trigger
class n3,n18 decision
class n5,n6,n7 database
class n10,n16,n17 api
class n1,n11,n12 code
classDef customIcon fill:none,stroke:none
class n5,n6,n7,n10,n15,n16,n17 customIcon
Problemet: backuper finns, men du kan inte lita på dem
De flesta team tror att de har backuper eftersom ”någon exporterade det en gång” eller för att verktyget i sig har historik någonstans. Sedan går ett flöde sönder efter en liten ändring, en ändrad credential eller en oavsiktlig radering, och plötsligt letar du i gamla filer med otydliga namn, saknad kontext och utan koll på vilken som var den senaste ”bra” versionen. Även om du hittar en JSON-export är den ofta inte kopplad till en inventering, så du kan fortfarande inte svara på grundfrågor som vem som äger det, när det kördes senast eller vilken version du återställde. Ärligt talat är det så små problem blir till långa eftermiddagar.
Friktionen byggs på. Här är var det fallerar.
- Exporter blir utspridda i Drive-mappar, Slack-trådar och på laptops, så ”den senaste” blir en gissning.
- När något ändras finns det ingen enkel revisionskedja för att jämföra versioner eller bekräfta vad som driftsattes.
- Manuella backuprutiner hoppas över under hektiska veckor, vilket oftast är när du behöver dem som mest.
- Utan en inventering slösar du tid på att återskapa kontext innan du ens kan börja återställa.
Lösningen: schemalagda flödesexporter med en live-inventering
Det här n8n-flödet körs enligt schema (var 30:e minut som standard) och hämtar din flödeslista från n8n REST API. För varje flöde som hittas hämtar det fullständiga flödesdetaljer, konverterar datan till en fil och sparar en versionshanterad JSON-backup i Dropbox. När filen är sparad hämtar flödet en temporär länk som du kan använda för snabb åtkomst och lägger till länken i en Airtable-bas som fungerar som din inventering. Airtable hålls strukturerat: om en post redan finns för flödet uppdateras den; annars skapas en ny. Du får både en hållbar filbackup och ett sökbart system som är din ”single source of truth”.
Flödet startar med Cron, hämtar sedan en lista över flöden och bearbetar dem i batchar för att inte överbelasta något. Varje objekt sparas i Dropbox, därefter frågas Airtable för att avgöra om det ska uppdatera en befintlig rad eller lägga in en ny. Klart.
Det du får: automation vs. resultat
| Vad det här flödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut i praktiken
Säg att du har 40 flöden i n8n och försöker ”ta backuper” en gång i veckan. Manuellt tar det kanske 3 minuter per flöde att exportera, namnge filen, ladda upp den och uppdatera en tracker, vilket blir runt 2 timmar när du räknar in avbrott. Med den här automationen: triggen är automatisk och den enda mänskliga tiden är att kolla Airtable-vyn i en minut eller två. Även om bearbetningen körs i bakgrunden ett tag får du tillbaka din eftermiddag.
Det här behöver du
- n8n-instans (prova n8n Cloud gratis)
- Self-hosting-alternativ om du föredrar det (Hostinger fungerar bra)
- Dropbox för att lagra versionshanterade JSON-backupfiler.
- Airtable för att hålla en sökbar flödesinventering.
- n8n API-åtkomst (tillgängligt via din n8n-instans URL och inloggningsuppgifter)
Svårighetsgrad: Medel. Du kopplar konton, sätter behörigheter och redigerar ett par fält så att de matchar din Airtable-bas.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Schemalagd kontroll (eller manuell körning). Cron triggar var 30:e minut, och det finns även en manuell trigger för test, så att du kan validera allt innan du låter det köra utan övervakning.
Upptäckt av flöden och batchning. n8n anropar sitt eget REST API för att hämta flödeslistan, transformerar sedan objekten till ett konsekvent format och bearbetar dem i batchar. Det gör att automationen håller sig stabil när du har dussintals (eller hundratals) flöden.
Exportera och lagra backupen. För varje flöde hämtar automationen fullständiga detaljer, konverterar JSON till en binär fil och laddar upp den till Dropbox. Efter uppladdningen hämtar den en temporär länk så att du snabbt kan öppna exakt backup från din inventering.
Uppdatera inventeringen i Airtable. Airtable frågas för att se om flödet redan finns i din bas. Om det finns uppdaterar flödet posten; om inte lägger det in en ny rad med mappade fält och länk.
Du kan enkelt ändra schemafrekvensen för att matcha din risktolerans och volym. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera manuella och schemalagda triggers
Sätt upp både manuella och schemalagda starter så att ni kan testa vid behov och köra varje timme i produktion.
- Lägg till en Manual Execution Start-nod för att möjliggöra manuella körningar vid test.
- Lägg till en Scheduled Trigger-nod och behåll standardinställningarna för schemat, eller ställ in triggtiderna efter era behov (det här workflowet använder två körningar per timme vid minuterna
15och45). - Koppla både Manual Execution Start och Scheduled Trigger till Retrieve Workflow List.
Steg 2: Anslut n8n API-datakällan
Hämta listan över workflows och deras detaljer från er n8n-instans med hjälp av HTTP-anrop.
- I Retrieve Workflow List ställer ni in URL till
http://localhost:5678/rest/workflowsoch aktiverar Allow Unauthorized Certs. - I Retrieve Workflow List lägger ni till en header-parameter Authorization med värdet
[CONFIGURE_YOUR_TOKEN]. - I Fetch Workflow Details ställer ni in URL till
=http://localhost:5678/rest/workflows/{{$node["Batch Iterator"].json["id"]}}och lägger till samma Authorization-header[CONFIGURE_YOUR_TOKEN].
[CONFIGURE_YOUR_TOKEN] med en giltig n8n API-token, annars misslyckas HTTP-anropen utan tydligt fel.Steg 3: Sätt upp workflow-iteration och filpaketering
Omvandla workflow-listan till enskilda items och paketera sedan varje workflow-JSON för lagring i Dropbox.
- I Transform Workflow Items behåller ni den medföljande funktionskoden som mappar
items[0].json.datatill enskilda items. - Konfigurera Batch Iterator med Batch Size satt till
1så att varje workflow behandlas separat. - I Convert to Binary ställer ni in Mode till
jsonToBinaryoch behåller Keep Source aktiverat. - I Store in Dropbox ställer ni in Path till
=/workflows/workflow_{{$node["Fetch Workflow Details"].json["data"]["id"]}}/workflow_{{$node["Fetch Workflow Details"].json["data"]["id"]}}__{{$node["Fetch Workflow Details"].json["data"]["updatedAt"]}}.jsonoch aktiverar Binary Data. - Inloggningsuppgifter krävs: Anslut era dropboxApi-uppgifter i Store in Dropbox.
- I Fetch Temp Link ställer ni in URL till
https://api.dropboxapi.com/2/files/get_temporary_link, Request Method tillPOST, och lägger till en body-parameter path med värdet={{$node["Store in Dropbox"].json["path_lower"]}}.
Steg 4: Konfigurera Airtable-sökning, mappning och upsert-logik
Kontrollera om det finns befintliga poster och uppdatera eller lägg sedan till workflow-data i Airtable.
- I Query Airtable Records ställer ni in Application till
[YOUR_ID], Table tillWorkflowsoch Filter by Formula till=workflowId={{$node["Fetch Workflow Details"].json["data"]["id"]}}. - Inloggningsuppgifter krävs: Anslut era airtableApi-uppgifter i Query Airtable Records, Update Airtable Entry och Append Airtable Entry.
- I Check Airtable Presence behåller ni booleska villkoret
={{$node["Query Airtable Records"].json["id"] != "" && $node["Query Airtable Records"].json["id"] != null && $node["Query Airtable Records"].json["id"] != undefined}}. - I Assemble Update Fields och Assemble Insert Fields behåller ni den medföljande funktionskoden för att bygga
nodes,CRON_details,rawDataoch trigger-flaggor. - I Map Update Values behåller ni Keep Only Set aktiverat och säkerställer att fält använder uttryck som
={{$node["Fetch Workflow Details"].json["data"]["id"]}}och={{$node["Assemble Update Fields"].json["fields"]["rawData"]}}. - I Map Insert Values behåller ni Keep Only Set aktiverat och säkerställer att fält använder uttryck som
={{$node["Fetch Workflow Details"].json["data"]["name"]}}och={{$node["Assemble Insert Fields"].json["fields"]["CRON_details"]}}. - I Update Airtable Entry ställer ni in ID till
={{$node["Query Airtable Records"].json["id"]}}och behåller Operation somupdate. - I Append Airtable Entry behåller ni Operation som
append.
[YOUR_ID] med ert Airtable Base ID i alla Airtable-noder, annars skrivs posterna inte korrekt.Steg 5: Stäng batch-loopen
Slutför varje batch och loopa tills alla workflows har behandlats.
- I Branch Completion behåller ni villkoret
={{$node["Batch Iterator"].context["noItemsLeft"]}}för att upptäcka när batchen är slut. - Säkerställ att true-utgången från Branch Completion kopplas till End Placeholder, och att false-utgången loopar tillbaka till Batch Iterator.
Steg 6: Testa och aktivera ert workflow
Validera hela pipelinen innan ni aktiverar schemalagda körningar.
- Klicka på Execute Workflow från Manual Execution Start för att testa hela körningen.
- Bekräfta att Store in Dropbox skapar filer och att Fetch Temp Link returnerar en länk.
- Verifiera att Airtable-poster uppdateras via Update Airtable Entry eller läggs till via Append Airtable Entry med fält som
workflowId,nodesochrawData. - När allt är verifierat växlar ni workflowet till Active så att Scheduled Trigger kör varje timme i produktion.
Vanliga fallgropar
- Airtable-credentials kan löpa ut eller sakna åtkomst till basen. Om saker går sönder, kontrollera först omfattningarna (scopes) för Airtable personal access token och basbehörigheterna.
- Om du använder Wait-noder eller extern rendering varierar körtiderna. Öka väntetiden om noder längre fram fallerar på tomma svar.
- n8n REST-endpointen som används här (samma som editor-UI:t använder) är inte officiellt supportad. Efter en n8n-uppgradering, testa HTTP Request-noderna ”Retrieve Workflow List” och ”Fetch Workflow Details” innan du antar att backuperna fortfarande är giltiga.
Vanliga frågor
Cirka 30–60 minuter om Dropbox och Airtable redan är anslutna.
Ingen kodning krävs. Du mappar främst några fält och kopplar credentials.
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 volym. Du bör också ta hänsyn till gränser i Airtable-planen och eventuella lagringskostnader i Dropbox om du sparar många historiska versioner.
Två alternativ: n8n Cloud (hanterat, enklast att sätta upp) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, men du byter ut steget ”Store in Dropbox” mot en uppladdningsnod för Google Drive och behåller Airtable-logiken för uppdatering. De flesta anpassar också filnamnssättningen och lägger till ett fält i Airtable för miljö (prod vs. staging) så att inventeringen förblir lättläst.
Oftast handlar det om en utgången Dropbox-token eller saknade behörigheter för målmappen. Anslut Dropbox igen i n8n och bekräfta sedan att sökvägen i uppladdningsnoden fortfarande finns och att ditt konto kan skriva till den. Om det började efter en n8n-uppgradering, testa också HTTP Request-noderna, eftersom det här flödet är beroende av ett internt n8n-API som kan ändras.
Några hundra flöden är realistiskt i de flesta miljöer.
Det beror på vad du menar med ”bättre”. Zapier och Make är bra för enkla tvåappszaps, men att exportera dussintals objekt enligt schema, loopa igenom dem och förgrena på ”uppdatera vs. lägg till” kan snabbt bli rörigt och dyrt. n8n trivs med den typen av logik, och self-hosting tar bort körningstak för inventeringar med hög volym. Den viktigaste poängen: det här flödet lutar sig mot n8n:s eget REST API, vilket inte är en typisk Zapier-vänlig källa. Om du vill ha hjälp att välja rätt upplägg för din stack, prata med en automationsexpert.
När detta väl rullar slutar backuper vara en uppgift du ”tänker att du ska göra”. Du har aktuella exporter i Dropbox och en strukturerad Airtable-inventering du kan lita på när det gäller.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.