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

Google Drive till Google Sheets, batchuppladdningar

Rickard Andersson Partner, Nodenordic.se

Batchuppladdningar faller isär på det mest frustrerande sättet: API:t vill ha ”en JSON-array med filer”, men du har en ZIP med binära filer som ligger i Google Drive. Så du slutar med att packa upp, byta namn, ladda upp igen och försöka hålla filvägar intakta för hand.

Den här Drive Sheets-automationen drabbar marketing ops-team när de levererar kreativa paket, och den är lika smärtsam för byråägare som levererar kundmaterial. Även e-handelsteam som hanterar produktbildspaket känner av det. Resultatet är enkelt: du gör om en Drive-ZIP till en korrekt formaterad Base64-”files”-array och loggar resultatet i Google Sheets så att du faktiskt kan lita på dina uppladdningar.

Nedan ser du exakt vad workflowet gör, vad det sparar i faktisk tid och hur du anpassar det för din egen batchuppladdnings-endpoint.

Så fungerar den här automatiseringen

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

n8n Workflow Template: Google Drive till Google Sheets, batchuppladdningar

Problemet: batchuppladdningar hatar ZIP:ar (och människor)

Många verktyg säger att de stödjer ”bulk upload”, men det de egentligen menar är ”skicka oss en väldigt specifik JSON-payload”. Om du börjar med ett ZIP-paket i Google Drive hanterar du flera filer i ett objekt, inkonsekventa mappvägar och binärdata som ett externt API inte accepterar som det är. Den vanliga nödlösningen är rörig: packa upp lokalt, paketera om filer en och en, Base64-koda dem med ett script och försök igen efter första misslyckandet. Under tiden är din kalkylbladslogg inaktuell och ingen vet vilket paket som faktiskt gick igenom.

Friktionen växer snabbt. Här är var det brukar skapa fel.

  • Du slösar cirka 30–60 minuter per paket bara på att konvertera filer till formatet som API:t förväntar sig.
  • Mappvägar försvinner vid manuell uppackning, vilket leder till ”file not found”-fel på andra sidan.
  • Ett missat filnamn eller fel kodning gör att hela payloaden fallerar, så du börjar om från början.
  • Du kan inte rapportera status pålitligt till teamet eftersom inget loggas på ett ställe.

Lösningen: konvertera Drive-ZIP-paket till en uppladdningsklar Base64-array

Det här n8n-workflowet tar ett zippat paket med material, packar upp det, konverterar varje binär fil till Base64, återskapar varje fils fullständiga sökväg/namn och slår sedan ihop allt till ett enda JSON-objekt med en toppnivå-files-array. Den arrayen har exakt den form många batchuppladdnings-API:er vill ha: varje post har filnamn (eller sökväg) plus Base64-innehåll. Ingen anpassad JavaScript behövs, vilket är ärligt talat det bästa för icke-tekniska team eftersom det förblir redigerbart och transparent. När den slutliga JSON:en är byggd kan du skicka den till ditt API och logga vad som hände i Google Sheets för insyn och uppföljning.

Workflowet startar när du triggar det (manuellt i mallen, eller via webhook i produktion). Det hämtar arkivet via HTTP Request, packar upp det med en Compression-nod, och delar sedan upp de extraherade binärfilerna i separata objekt. Därifrån Base64-kodas varje fil och märks med korrekt sökväg innan allt kombineras till en korrekt formaterad payload.

Det du får: automation vs. resultat

Exempel: så här ser det ut

Säg att du skickar ett kreativt paket i veckan med 40 filer i (bilder, videor, en CSV och några JSON-konfigurationer). Manuellt kan du lägga cirka 2 minuter per fil på att extrahera, byta namn, koda och placera den i rätt payload-format, plus ytterligare 20 minuter på att rätta till de oundvikliga misstagen. Det är ungefär 1,5–2 timmar per vecka. Med det här workflowet triggar du det en gång, väntar några minuter på extrahering och kodning, och får en enda uppladdningsklar files-array plus en post som du kan logga i Google Sheets.

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)
  • Google Drive för att lagra och hämta ZIP-paket.
  • Google Sheets för att logga paketstatus och utdata.
  • API-åtkomst till ditt målsystem (hämta API-nyckeln i verktygets utvecklarinställningar).

Kunskapsnivå: Nybörjare. Du kopplar konton och justerar sedan ett par fält (som filnamn och var resultaten loggas).

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

Så fungerar det

Ett paket kommer in. I mallen startar du körningen manuellt. I en riktig uppsättning byter du vanligtvis triggern till en webhook så att teamet kan skicka in en Drive-fillänk (eller ett paket-ID) och låta n8n ta över därifrån.

ZIP:en hämtas och packas upp. En HTTP Request-nod laddar ner arkivet, och sedan extraherar Compression-noden allt innehåll. Det är här folk ofta tvingas till egen kod, eftersom utdata innehåller flera binärfiler under ett och samma objekt.

Varje fil isoleras och kodas. ”Separate File Items” delar upp det extraherade paketet så att varje fil blir ett eget objekt. ”Convert Files to Base64” riktar in sig på rätt binärnyckel (med ett dynamiskt uttryck) och skapar Base64-innehåll som tryggt kan ligga i JSON.

Sökvägar återskapas, sedan slås allt ihop. Steget ”Append File Paths” rekonstruerar en pålitlig sökväg/filnamn så att efterföljande API:er vet vad varje fil är. Till sist aggregerar workflowet varje fil till en toppnivå-files-array som är redo för en uppladdningsrequest och enkel att logga i Google Sheets.

Du kan enkelt ändra indatakällan (Drive, HTTP, formuläruppladdning) så att den matchar hur teamet arbetar. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: Konfigurera den manuella triggern

Det här arbetsflödet börjar med en manuell trigger så att ni kan köra konverteringen från binärdata till Base64 vid behov.

  1. Lägg till noden Manual Execution Start som trigger.
  2. Lämna alla fält på standardvärdena eftersom den inte kräver någon konfiguration.
  3. Koppla Manual Execution Start till Retrieve Demo Archive.

Steg 2: Anslut arkivkällan

Ladda ner ett ZIP-arkiv från GitHub som fungerar som binär indata för extrahering.

  1. Lägg till noden Retrieve Demo Archive.
  2. Ställ in URL till https://github.com/n8n-io/n8n-demo-website/archive/refs/heads/main.zip.
  3. I OptionsResponse, säkerställ att svarsformatet är inställt på en fil (binär).
  4. Koppla Retrieve Demo Archive till Extract Demo Bundle.

Tips: Om svarsformatet inte är inställt på fil kommer efterföljande binära noder inte att upptäcka några filer.

Steg 3: Sätt upp extrahering och uppdelning av filer

Packa upp arkivet och dela upp den binära bunten i enskilda filobjekt.

  1. Lägg till Extract Demo Bundle för att packa upp ZIP-filen.
  2. Koppla Extract Demo Bundle till Separate File Items.
  3. I Separate File Items, ställ in Field to Split Out till $binary.
  4. Koppla Separate File Items till Convert Files to Base64.

⚠️ Vanlig fallgrop: Om det binära fältet är tomt, kontrollera att föregående nod ger en ZIP-fil som output och att extraheringen lyckades.

Steg 4: Konvertera binära filer och bygg output-poster

Konvertera varje binär fil till Base64 och lägg till en läsbar filsökväg innan aggregering.

  1. I Convert Files to Base64, ställ in Operation till binaryToPropery.
  2. Ställ in Binary Property Name till ={{ $binary.keys()[0] }}.
  3. I Append File Paths, lägg till ett strängfält med namnet path med värdet ={{ $binary[$binary.keys()[0]].directory ? $binary[$binary.keys()[0]].directory + '/' : ''}}{{ $binary[$binary.keys()[0]].fileName }}.
  4. Lägg till ett strängfält med namnet data med värdet ={{ $json.data }}.
  5. Koppla Convert Files to Base64 till Append File Paths.
  6. Koppla Append File Paths till Combine Results.

Tips: Fältet path kombinerar katalog och filnamn så att ni kan identifiera varje Base64-payload senare.

Steg 5: Konfigurera den aggregerade outputen

Aggregera alla filposter till en enda array för vidare användning i efterföljande steg.

  1. Öppna Combine Results och ställ in Aggregate till aggregateAllItemData.
  2. Ställ in Destination Field Name till files.
  3. Bekräfta att slutlig output är ett enda item som innehåller en files-array med varje par av path och data.

Steg 6: Testa och aktivera ert arbetsflöde

Kör arbetsflödet manuellt för att validera filhämtning, extrahering och Base64-konvertering, och aktivera det när allt är klart.

  1. Klicka på Execute Workflow i n8n för att trigga Manual Execution Start.
  2. Verifiera att Combine Results ger ett enda item med en files-array som innehåller Base64-data och filsökvägar.
  3. Om outputen är korrekt, slå på arbetsflödet till Active för användning i produktion.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Drive-inloggningar kan löpa ut eller kräva specifika behörigheter. Om något går sönder, kontrollera först statusen för Google-anslutningen i n8n credentials.
  • Om du använder Wait-noder eller extern rendering varierar processtider. Öka väntetiden om efterföljande noder fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera utdata i all evighet.

Vanliga frågor

Hur lång tid tar det att sätta upp den här Drive Sheets-automationen?

Cirka 30 minuter om dina Google-konton redan är anslutna.

Behöver jag kunna koda för att automatisera Google Drive ZIP till Google Sheets-loggning?

Nej. Du kommer mest att mappa fält och koppla credentials. Base64-konverteringen hanteras med no-code-noder i workflowet.

Är n8n gratis att använda för det här Drive Sheets-automations-workflowet?

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 behöver också räkna in eventuella externa API-kostnader för systemet du laddar upp till.

Var kan jag hosta n8n för att köra den här Drive Sheets-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 klarar n8n bra. Self-hosting ger obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här Drive Sheets-automations-workflowet för att skicka Base64-arrayen till mitt uppladdnings-API?

Ja, men du vill göra det med en tydlig plan. Lägg till en HTTP Request-nod efter ”Combine Results” och mappa den slutliga files-arrayen till JSON-bodyt som ditt API förväntar sig. Vanliga anpassningar är att lägga till metadata (projekt-ID, användar-ID), filtrera bort dolda filer och att tvinga fram en filnamnskonvention före aggregeringssteget.

Varför fallerar min Google Drive-anslutning i det här workflowet?

Oftast beror det på en utgången OAuth-session eller att Drive-kontot saknar åtkomst till mappen där ZIP:en ligger. Återanslut Google Drive-credential i n8n och försök igen. Om du hämtar ZIP:en via en delad länk, säkerställ att den inte är begränsad till specifika användare.

Hur många filer kan den här Drive Sheets-automationen hantera?

I praktiken fungerar det bra med allt från dussintals till några hundra filer per paket, och den verkliga gränsen är din n8n-plan och serverns minne.

Är den här Drive Sheets-automationen bättre än att använda Zapier eller Make?

För ZIP-extrahering av många filer och Base64-paketering är n8n oftast ett renare val eftersom du kan dela upp, transformera och aggregera utan att slåss mot plattformsbegränsningar. Zapier och Make kan fungera, men du stöter ofta på klumpiga begränsningar kring binärhantering och förgrening när paketet blir stort. En annan stor skillnad är kontroll: med self-hosting av n8n kan du köra högre volym utan stress över prissättning per task. Om du bara behöver en enkel ”fil tillagd i Drive → rad i Sheets” kan de verktygen vara snabbare. Prata med en automationsexpert om du vill ha en rekommendation baserad på ditt exakta uppladdnings-API.

När detta väl rullar slutar ”ZIP-paket till uppladdningspayload” att vara en återkommande brandövning. Du får renare uppladdningar, ett spår i Sheets och tid tillbaka till arbete som faktiskt gör skillnad.

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