Du hämtar JSON från ett API, klistrar in det i ett ark och ångrar dig direkt. Kolumnerna hamnar fel, nästlade fält blir en röra och någon ber oundvikligen om en CSV “innan arbetsdagen är slut”.
Den här JSON Google Sheets-automationen träffar först marknadsförare som bygger veckovisa prestationsrapporter. Ops-personer som rensar leverantörsdata känner av det också, och konsulter som sammanställer kunddashboards definitivt. Resultatet är enkelt: felfria, konsekventa rader i Google Sheets plus en CSV som är klar att dela, utan manuell copy-paste.
Nedan ser du arbetsflödet, vad det löser och hur delarna hänger ihop så att du kan köra det vid begäran eller göra om det till en schemalagd pipeline.
Så fungerar den här automationen
Hela n8n-arbetsflödet, från trigger till slutlig output:
n8n Workflow Template: JSON till Google Sheets, felfria rader utan kopiera
flowchart LR
subgraph sg0["When clicking "Execute Workflow" Flow"]
direction LR
n0["<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/>HTTP Request"]
n1@{ icon: "mdi:cog", form: "rounded", label: "Spreadsheet File", pos: "b", h: 48 }
n2@{ icon: "mdi:play-circle", form: "rounded", label: "When clicking 'Execute Workf..", pos: "b", h: 48 }
n3@{ icon: "mdi:database", form: "rounded", label: "Google Sheets", pos: "b", h: 48 }
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set", pos: "b", h: 48 }
n4 --> n1
n0 --> n3
n0 --> n4
n2 --> n0
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 n2 trigger
class n3 database
class n0 api
classDef customIcon fill:none,stroke:none
class n0 customIcon
Problemet: JSON-rapportering skapar fel i kalkylark
JSON är toppen för API:er och uselt för kalkylark. Du kan kopiera ett svar till ett verktyg som “konverterar” det, men så fort API:et lägger till ett fält, byter namn eller returnerar ett tomt objekt, faller din prydliga tabell isär. Då fastnar du i att mappa om kolumner, rensa konstiga tecken och försöka komma ihåg vilken version av filen du skickade till vem. Det är inte svårt arbete. Det är skört arbete, och det kommer tillbaka om och om igen.
Friktionen byggs på, särskilt när det här blir en veckorutin.
- Manuell JSON-till-rader-rensning kan lätt sluka cirka 1 timme per rapportcykel.
- Dina kolumner glider över tid, vilket gör diagram och pivottabeller opålitliga.
- Ett litet formateringsmisstag kan skapa fel vid CSV-import för en kund eller intressent.
- Du gör samma mappningsarbete om och om igen eftersom det saknas en repeterbar pipeline.
Lösningen: hämta JSON en gång, skapa Sheets + CSV automatiskt
Det här arbetsflödet gör om ett API-svar i JSON till ett konsekvent, kalkylarksanpassat format varje gång du kör det. Det startar med en manuell trigger (så att du kan testa säkert), gör en HTTP-förfrågan till din API-endpoint och mappar sedan de fält du faktiskt bryr dig om till korrekta kolumner. Därifrån gör det två nyttiga saker parallellt: det lägger till de normaliserade raderna i Google Sheets för löpande rapportering, och det genererar en CSV-fil som du kan dela, ladda upp eller arkivera. Samma input. Två outputs. Mindre extrajobb.
Arbetsflödet börjar när du klickar på “execute”. n8n hämtar JSON via HTTP Request, omformar den i steget “Map Data Fields”, skickar den till Google Sheets och skapar dessutom en CSV via noden Spreadsheet File. Du får ett levande ark plus en export som går att dela, utan att röra copy-paste.
Det du får: automation vs. resultat
| Det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du hämtar veckostatistik för kampanjer från ett API och skickar resultatet till en kund. Manuellt kan du lägga cirka 30 minuter på att exportera JSON, ytterligare 30 minuter på att rensa det till kolumner och 10 minuter på att skapa en CSV och dubbelkolla rubriker (totalt lite över 1 timme). Med det här arbetsflödet klickar du på kör, väntar en minut eller två på API-anropet och bearbetningen, och sedan är ditt Google Sheet uppdaterat och CSV-filen skapad. Du är i princip klar innan kaffet hunnit kallna.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- Google Sheets för att lagra strukturerade rader över tid
- En API-endpoint som returnerar JSON-data för din rapport
- API-nyckel (om det krävs) (hämta den från din API-leverantörs dashboard)
Svårighetsnivå: Nybörjare. Du kopplar Google, klistrar in en API-URL och mappar några fält.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Manuell körning sätter igång. Du startar arbetsflödet med ett klick, vilket är perfekt medan du verifierar API-svaret och din kolumnmappning.
Arbetsflödet hämtar JSON från ditt API. Noden HTTP Request hämtar data från din endpoint, inklusive headers eller autentisering som du konfigurerar.
Din JSON blir rader som är klara för Sheets. Steget Map Data Fields omformar svaret till en förutsägbar struktur, så att ditt ark behåller samma kolumner även när API:et innehåller extra fält som du inte behöver.
Två outputs skapas. n8n lägger till den rensade datan i Google Sheets och skapar dessutom en CSV-fil från samma mappade fält så att du kan dela eller spara en export.
Du kan enkelt justera de mappade fälten så att de matchar ditt API och dina rapportbehov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-implementeringsguide
Steg 1: Konfigurera den manuella triggern
Det här arbetsflödet startar manuellt så att ni kan testa och validera exportprocessen innan ni automatiserar den vidare.
- Lägg till och placera Manual Execution Start som triggernod i början av arbetsflödet.
- Lämna standardinställningarna som de är (inga parametrar krävs för manuell körning).
- Anslut Manual Execution Start till External API Call.
Steg 2: Konfigurera det externa API-anropet
Den här noden hämtar användardata från ett publikt API och delar sedan upp i parallella spår.
- Välj External API Call och ställ in URL till
https://randomuser.me/api/. - Lämna Options tomt om ni inte behöver egna headers eller autentisering.
- Säkerställ att anslutningen ger parallella utdata: External API Call skickar utdata till både Append Google Sheet och Map Data Fields parallellt.
Steg 3: Anslut Google Sheets
En gren lägger till rådata i ett Google Sheet för spårning och historik.
- Öppna Append Google Sheet och ställ in Operation till
append. - Ställ in Document till
[YOUR_ID]och välj målarket (t.ex. Sheet1). - Bekräfta att kolumnschemat för id, status och name är definierat i Columns.
- Credential Required: Anslut era googleSheetsOAuth2Api-uppgifter.
[YOUR_ID] med ert faktiska dokument-ID för Google Sheet, annars kommer append-åtgärden att misslyckas.Steg 4: Konfigurera datamappning och CSV-export
Den andra parallella grenen transformerar API-svaret och exporterar det till en CSV-fil.
- I Map Data Fields, aktivera Keep Only Set till
true. - Lägg till följande mappade fält med uttryck: Full Name =
{{ $json.results[0].name.first }} {{ $json.results[0].name.last }}, Country ={{ $json.results[0].location.country }}och email ={{ $json.results[0].email }}. - Anslut Map Data Fields till Create CSV File.
- I Create CSV File, ställ in Operation till
toFileoch File Format tillcsv. - Ställ in File Name till
users_spreadsheeti Options.
Steg 5: Testa och aktivera ert arbetsflöde
Kör ett manuellt test för att bekräfta att både tillägg i Google Sheet och CSV-export fungerar.
- Klicka på Execute Workflow i Manual Execution Start för att köra ett test.
- Verifiera att Append Google Sheet lägger till en ny rad i ert målark.
- Kontrollera utdata från Create CSV File för en nedladdningsbar CSV med namnet
users_spreadsheet. - När allt är verifierat, slå på arbetsflödet till Active för produktionsanvändning.
Vanliga fallgropar
- Google Sheets-inloggning kan löpa ut eller kräva specifika behörigheter. Om något slutar fungera, kontrollera först fliken Credentials i n8n och att ditt Google-konto har åtkomst till målarket.
- Svar från HTTP Request är inte alltid konsekventa. Om ditt API ibland returnerar en felpayload eller en tom array kan mappningssteget ge tomma värden, så lägg in grundläggande kontroller innan du lägger till i Sheets.
- CSV-output kan se “fel” ut i Excel om avgränsare och teckenkodning inte matchar förväntningarna. Om intressenter öppnar filen och ser konstiga tecken, justera inställningarna i Spreadsheet File (avgränsare och kodning) och exportera igen.
Vanliga frågor
Cirka 20 minuter om ditt API och din Google-åtkomst är redo.
Nej. Du klistrar i princip in en API-URL och mappar fält till kolumner.
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 volymer. Du behöver också räkna in eventuella API-kostnader från tjänsten du anropar (många är gratis vid låg volym).
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 klarar n8n bra. Egen hosting ger obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det är huvudskälet till att den här mallen är användbar. Uppdatera steget “Map Data Fields” så att det matchar dina fältnamn i API:et och håll sedan namn på output-kolumnerna stabila för ditt ark. Vanliga anpassningar är att platta ut nästlad JSON till separata kolumner, byta fältnamn så att de matchar rubrikerna i rapporten och filtrera bort rader du inte vill lagra.
Oftast beror det på att Googles auktorisering har löpt ut eller att fel konto används. Koppla om Google Sheets-uppgiften i n8n och bekräfta sedan att kalkylarket är delat med den Google-användaren. Om det fortfarande misslyckas, kontrollera att målfliken finns och att ditt konto har redigeringsåtkomst, inte bara visningsåtkomst.
Det beror mer på gränserna i ditt Google Sheet och API än på n8n i sig. I n8n Cloud beror dina månatliga körningar på plan, och större importer kan vara bättre att batcha. Om du kör egen hosting har du inget tak för körningar, men väldigt stora skrivningar kan ändå vara långsamma i Google Sheets, så många team håller varje körning till några tusen rader och arkiverar äldre data.
Ofta, ja, särskilt när din JSON inte är helt platt. n8n gör det enklare att omforma data innan den hamnar i ditt ark, och du kan behålla mer komplex logik utan att betala per ministeg. Alternativet med egen hosting är också viktigt om du planerar att köra detta ofta. Zapier eller Make kan vara enklare för snabba två-app-flöden, men de blir klumpiga när du behöver konsekvent kolumnmappning plus en strukturerad CSV-export. Vill du ha en second opinion, prata med en automationsexpert.
Felfria rader, konsekventa kolumner och en CSV som du kan skicka utan att tveka. Sätt upp det en gång och låt sedan arbetsflödet ta hand om det repetitiva.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.