Du får äntligen en bra ”trendstil”-idé, och sen tappar du en timme på de irriterande bitarna: samla referensbilder, skriva om prompts, vänta på renderingar och leta upp länkar som hamnade på tre olika ställen.
Den här Kling Sheets-automationen träffar innehållsskapare först, helt ärligt. Men social media managers och tillväxtfokuserade marknadsförare känner också av det när batchar blir röriga och dubbletter smyger sig in. Resultatet är enkelt: mer strukturerade produktionskörningar, färre duplicerade prompts och ett Google Sheet som visar exakt vad som är klart.
Du sätter upp ett n8n-flöde som genererar selfie-bilder i kändisstil, gör om dem till Kling-övergångsvideor och sedan spårar allt (prompts, länkar och status) i Google Sheets så att du kan skala utan att tappa kontrollen.
Så fungerar den här automatiseringen
Här är hela flödet du kommer att sätta upp:
n8n Workflow Template: Kling AI + Google Sheets: trendvideor spårade
flowchart LR
subgraph sg0["📝 Form Input 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/form.svg' width='40' height='40' /></div><br/>📝 Form Input"]
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "⚙️ Config", pos: "b", h: 48 }
n2["<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/>📥 Process & Split"]
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "🔄 Loop Each Celebrity", pos: "b", h: 48 }
n4@{ icon: "mdi:brain", form: "rounded", label: "GPT-4 Language Model", pos: "b", h: 48 }
n5@{ icon: "mdi:robot", form: "rounded", label: "🤖 AI Generate Prompt", pos: "b", h: 48 }
n6@{ icon: "mdi:robot", form: "rounded", label: "Parse Prompt Response", pos: "b", h: 48 }
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/code.svg' width='40' height='40' /></div><br/>🔗 Merge Prompt"]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>🎨 SeedDream Generate"]
n9["<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/>💾 Store Request"]
n10@{ icon: "mdi:cog", form: "rounded", label: "⏳ Wait 45s", pos: "b", h: 48 }
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/httprequest.dark.svg' width='40' height='40' /></div><br/>📊 Check Status"]
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/code.svg' width='40' height='40' /></div><br/>🔗 Merge Status"]
n13@{ icon: "mdi:swap-horizontal", form: "rounded", label: "✅ Ready?", pos: "b", h: 48 }
n14["<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 Result"]
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/code.svg' width='40' height='40' /></div><br/>📋 Prepare Output"]
n16@{ icon: "mdi:database", form: "rounded", label: "📊 Save to Sheets", pos: "b", h: 48 }
n17@{ icon: "mdi:cog", form: "rounded", label: "⏳ Retry 20s", pos: "b", h: 48 }
n18["<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/>🔄 Retry"]
n13 --> n14
n13 --> n17
n18 --> n11
n10 --> n11
n17 --> n18
n1 --> n2
n0 --> n1
n14 --> n15
n11 --> n12
n7 --> n8
n12 --> n13
n9 --> n10
n16 --> n3
n15 --> n16
n4 -.-> n5
n2 --> n3
n6 -.-> n5
n8 --> n9
n5 --> n7
n3 --> n5
end
subgraph sg1["▶️ Start Video Generation Flow"]
direction LR
n19@{ icon: "mdi:play-circle", form: "rounded", label: "▶️ Start Video Generation", pos: "b", h: 48 }
n20@{ icon: "mdi:database", form: "rounded", label: "📊 Read from Sheets", pos: "b", h: 48 }
n21["<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/>🔍 Filter Ready Rows"]
n22@{ icon: "mdi:swap-vertical", form: "rounded", label: "🔄 Loop Each Video", pos: "b", h: 48 }
n23["<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/>📝 Build Video Prompt"]
n24["<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/>🎥 Kling Generate Video"]
n25@{ icon: "mdi:cog", form: "rounded", label: "⏳ Wait 120s", pos: "b", h: 48 }
n26["<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 Video Result"]
n27["<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 Update"]
n28@{ icon: "mdi:database", form: "rounded", label: "📊 Save to CelebrityVideos", pos: "b", h: 48 }
n29@{ icon: "mdi:cog", form: "rounded", label: "⏳ Retry 60s", pos: "b", h: 48 }
n30@{ icon: "mdi:swap-vertical", form: "rounded", label: "⚙️ Video Config", pos: "b", h: 48 }
n31["<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/>💾 Store Video Request"]
n32["<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/>📊 Check Video Status"]
n33["<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/>🔗 Merge Video Status"]
n34@{ icon: "mdi:swap-horizontal", form: "rounded", label: "✅ Video Ready?", pos: "b", h: 48 }
n35["<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/>🔄 Retry Video Check"]
n29 --> n35
n25 --> n32
n34 --> n26
n34 --> n29
n30 --> n20
n27 --> n28
n22 --> n23
n20 --> n21
n26 --> n27
n35 --> n32
n21 --> n22
n32 --> n33
n23 --> n24
n33 --> n34
n31 --> n25
n24 --> n31
n28 --> n22
n19 --> n30
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,n19 trigger
class n5,n6 ai
class n4 aiModel
class n13,n34 decision
class n16,n20,n28 database
class n8,n11,n14,n24,n26,n32 api
class n2,n7,n9,n12,n15,n18,n21,n23,n27,n31,n33,n35 code
classDef customIcon fill:none,stroke:none
class n0,n2,n7,n8,n9,n11,n12,n14,n15,n18,n21,n23,n24,n26,n27,n31,n32,n33,n35 customIcon
Varför det här spelar roll: trendvideoproduktion blir kaotisk snabbt
Att göra övergångsvideor med ”kändisselfies” är märkligt lätt att börja med och plågsamt svårt att hantera. De första är roliga, sedan jonglerar du ansiktsbilder, upp till fyra kändisreferenser, promptversioner och statuskontroller i flera verktyg. Du väntar, uppdaterar, kör om, och ibland genererar du samma idé två gånger eftersom du inte hittar vad du gjorde senast. Ännu värre: du står med en mapp full av omärkta filer och inget pålitligt sätt att veta vilka par som är redo för Kling.
Det är inte ett stort problem. Det är en hög av små friktioner.
- Prompt-justeringar hamnar i DM:ar eller anteckningar, så din ”bästa” prompt blir aldrig återanvändbar.
- Statuskontroller blir ett hoppa-mellan-flikar-jobb, och du missar ändå misslyckade körningar tills det är för sent.
- Att batcha par (Kändis 1 → Kändis 2) blir ett manuellt Excel-/Sheets-göra med massor av kopiera-klistra in.
- Du kan inte skala output med trygghet eftersom det inte finns ett ställe som visar vad som är begärt, vad som är klart och vad som kräver åtgärd.
Det du bygger: AI-selfies till Kling-videor, fullt spårat
Det här flödet ger dig en repeterbar produktionslina för trendinnehåll med kändisselfies. Det börjar med ett enkelt intagsformulär där du laddar upp din ansiktsbild och upp till fyra kändisreferensbilder. Därifrån tar GPT-4 fram en optimerad prompt som är utformad för realistisk selfie-komposition, och flödet sätter ihop en konsekvent slutprompt så att du inte behöver uppfinna formuleringarna på nytt varje gång. SeedDream v4.5 genererar bilden, n8n väntar och kontrollerar status tills den är klar, och sparar sedan slutliga bilddetaljer i Google Sheets. När du är redo att skapa videor laddar flödet in dina ”klara” bildrader, parar ihop dem till övergångar (Kändis 1 → Kändis 2), skickar en prompt till Kling AI, pollar tills videon är färdig och skriver tillbaka den färdiga videolänken och metadata till ditt Sheet.
Intag och bildgenerering sker i ett pass. Videogenerering körs som ett andra pass med manuell start, vilket är rimligt eftersom du kan vilja granska bilder innan du lägger pengar på att generera videor.
Det du bygger
| Det som automatiseras | Det du uppnår |
|---|---|
|
|
Förväntade resultat
Säg att du producerar 10 övergångsvideor för en helgbatch. Manuellt kan du lägga cirka 10 minuter per video bara på att organisera input, skriva om prompts och klistra in länkar i en tracker, alltså runt 100 minuter innan du ens räknar med omkontroller och misstag. Med det här flödet tar intaget några minuter för hela batchen, och statusspårningen sker automatiskt medan du gör något annat. Väntan finns fortfarande (Kling behöver tid), men din hands-on-tid sjunker vanligtvis till cirka 15–20 minuter totalt för batchen.
Innan du börjar
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för egen drift om du föredrar det (Hostinger fungerar bra)
- Google Sheets för loggning av prompts, länkar och status.
- OpenAI (GPT-4) för att generera optimerade selfie-prompts.
- Fal.AI (SeedDream) för fotorealistisk bildgenerering.
- Kling AI-åtkomst för att generera övergångsvideor via API-anrop.
- API-nycklar (hämta dem i dina OpenAI- och Fal.AI-dashboards; Kling via din leverantör/ditt konto).
Kunskapsnivå: Medel. Du klistrar in API-nycklar, kopplar Google Sheets och ändrar ett par ”Config/Settings”-fält i n8n.
Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).
Steg för steg
Insändning via intagsformulär. Du laddar upp din ansiktsbild och lägger till upp till fyra kändisreferensbilder. Flödet initierar också inställningar (som ditt Google Sheet-ID) så att varje körning skriver till rätt plats.
Skapande och städning av prompt. GPT-4 tar fram ett strukturerat promptutkast, sedan parsar n8n det och sätter ihop en slutversion som håller sig konsekvent genom hela batchen. Här kan du bygga in dina stilregler så att resultaten inte driver.
Bildgenerering med statuspollning. n8n skickar prompten till SeedDream via HTTP Request, loggar begäran, väntar och kontrollerar sedan status tills bilden är klar. När den lyckas hämtar flödet bildresultatet och uppdaterar din CelebritySelfies-flik i Google Sheets.
Videogenerering för klara bilder. En manuell trigger startar den andra halvan. n8n laddar bildposter från Sheets, filtrerar raderna som faktiskt är klara, parar ihop dem till övergångar och anropar sedan Kling AI för att generera walking-övergångsvideor. Det väntar, pollar status igen, hämtar den färdiga videon och uppdaterar din CelebrityVideos-flik med länkar och metadata.
Du kan enkelt ändra vilka kändispar som genereras eller hur prompts formateras utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera formulärtriggern
Starta arbetsflödet genom att fånga användarindata från formulärtriggern som initierar pipelinen för bildgenerering.
- Lägg till och öppna 📝 Intake Form Trigger.
- Publicera formuläret och kopiera produktions-URL:en för er intake-sida.
- Koppla 📝 Intake Form Trigger till ⚙️ Initialize Settings för att matcha exekveringsflödet.
Steg 2: Anslut Google Sheets
Google Sheets används för att lagra bildresultat och videouppdateringar samt för att läsa in bildposter inför videokörningen.
- Öppna 📊 Update Image Sheet och välj mål-kalkylark och arbetsblad för bildutdata.
- Öppna 📊 Load Image Records och peka den till samma kalkylark där bildresultaten lagras.
- Öppna 📊 Update Video Sheet och välj bladet för statusuppdateringar för video.
- Säkerställ att bildflödet skriver till samma kolumner som 🔍 Filter Ready Items förväntar sig att läsa.
Inloggningsuppgifter krävs: Anslut era Google Sheets-inloggningsuppgifter
Steg 3: Sätt upp AI-promptning
Konfigurera pipelinen för att skapa AI-prompter som skriver utkast och strukturerar bildprompten för bildgenererings-API:et.
- Öppna GPT-4 Chat Engine och anslut ert OpenAI-konto.
- Öppna 🤖 Draft Image Prompt och bekräfta att GPT-4 Chat Engine är ansluten som språkmodell.
- Öppna Parse Prompt Output och definiera det strukturerade utdata-schemat som ni förväntar er från prompten.
- Verifiera flödet 🔄 Iterate Celebrities → 🤖 Draft Image Prompt → 🔗 Assemble Prompt för att säkerställa att prompter byggs för varje batchobjekt.
Inloggningsuppgifter krävs: Anslut era OpenAI-inloggningsuppgifter
Steg 4: Konfigurera bildgenerering och statuspollning
Det här steget skickar prompter till bild-API:et, loggar begäran och pollar tills bilden är klar innan den skrivs till Sheets.
- Öppna 🎨 SeedDream Image Call och konfigurera HTTP-begäran för er endpoint för bildgenerering.
- Använd 💾 Log Image Request för att fånga request-ID:n och metadata för statuspollning.
- Bekräfta statusloopen: 💾 Log Image Request → ⏳ Pause 45s → 📊 Verify Image Status → 🔗 Combine Status → ✅ Image Ready Check.
- Routa grenen “ready” från ✅ Image Ready Check till 📥 Fetch Image Result, därefter till 📋 Format Image Output och 📊 Update Image Sheet.
- Routa grenen “not ready” från ✅ Image Ready Check till ⏳ Pause 20s → 🔄 Retry Status Poll → 📊 Verify Image Status.
Steg 5: Konfigurera flödet för videogenerering
Videokörningen startas manuellt och använder färdiga bildposter för att bygga och polla videogenereringsbegäranden.
- Använd ▶️ Begin Video Run för att starta videopipelinen och koppla den till ⚙️ Video Settings.
- Läs in klara bilder via 📊 Load Image Records och filtrera dem i 🔍 Filter Ready Items.
- Iterera med 🔄 Iterate Videos och bygg prompter i 📝 Compose Video Prompt.
- Skicka videobegäran i 🎥 Kling Video Call och logga den sedan med 💾 Log Video Request.
- Verifiera status med loopen: 💾 Log Video Request → ⏳ Pause 120s → 📊 Verify Video Status → 🔗 Combine Video Status → ✅ Video Ready Check.
- Skicka färdiga resultat till 📥 Fetch Video Result → 📋 Format Video Update → 📊 Update Video Sheet.
- Routa grenen “not ready” från ✅ Video Ready Check till ⏳ Pause 60s → 🔄 Retry Video Poll → 📊 Verify Video Status.
Steg 6: Testa och aktivera ert arbetsflöde
Validera både bild- och videovägarna innan ni aktiverar arbetsflödet för produktion.
- Klicka på Execute Workflow och skicka in en testpost via 📝 Intake Form Trigger för att validera bildpipelinen.
- Bekräfta att en lyckad körning avslutas med att 📊 Update Image Sheet tar emot formaterad utdata från 📋 Format Image Output.
- Trigga ▶️ Begin Video Run manuellt och verifiera att 📊 Update Video Sheet tar emot den slutliga videodatan.
- När testerna lyckas, växla arbetsflödet till Active för att börja bearbeta inskick i realtid.
Felsökningstips
- Google Sheets OAuth kan misslyckas efter behörighetsändringar. Om uppdateringar slutar hamna i ditt Sheet, kontrollera först det anslutna Google-kontot i n8n:s Credentials.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Standardprompts i AI-noder är generiska. Lägg in din varumärkesröst tidigt, annars kommer du att redigera output för alltid.
Snabba svar
Cirka en timme om dina API:er och ditt Google Sheet är redo.
Nej. Du kopplar mest konton och klistrar in API-nycklar. Flödet innehåller redan logiken för batchning, pollning och att skriva till Sheets.
Ja. n8n har ett gratis alternativ för egen drift och en gratis provperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volym. Du behöver också räkna in kostnader för OpenAI + SeedDream (cirka 0,05 USD per bild) och Kling AI-kostnader (cirka 0,50–1,00 USD per video).
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen drift på en VPS. För egen drift är Hostinger VPS prisvärd och hanterar n8n bra. Egen drift ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det bör du. De snabbaste vinsterna är att redigera GPT-4-prompttexten (steget ”Draft Image Prompt”), ändra vad som skrivs in i Google Sheets (stegen ”Update Image Sheet” och ”Update Video Sheet”) och justera parningslogiken som används före Kling-anropet. Vissa team byter också intagsmetod, till exempel att använda Telegram i stället för ett formulär, men behåller samma spårningsflikar.
Oftast handlar det om OAuth-behörigheter eller att fel Google-konto är anslutet i n8n. Anslut credential igen och bekräfta sedan att Sheet-ID:t i flödesinställningarna matchar filen du redigerar. Om Sheet:et har två flikar, se till att fliknamnen matchar exakt (till exempel ”CelebritySelfies” och ”CelebrityVideos”). Kontrollera även delningsinställningar; om Sheet:et ägs av en annan Workspace-användare kan åtkomst blockeras.
Det beror mer på dina API-gränser och din budget än på n8n. I n8n Cloud är volym kopplad till dina månatliga körningar; vid egen drift finns inget hårt tak för körningar, men din server måste fortfarande klara pollning och filhantering. I praktiken kör de flesta batchar (till exempel 10–50 bilder och sedan de videor de faktiskt vill ha) eftersom Kling-videokostnader snabbt drar iväg. Om du förväntar dig hundratals videor per vecka, planera för rate limiting och längre väntetider.
Ofta, ja. Det här flödet bygger på att loopa batchar, polla status-endpoints och grena baserat på ”klar/inte klar”, vilket är den typ av logik som blir krånglig (och dyr) i Zapier. n8n är också mer flexibelt när du vill köra egen drift och göra många körningar utan oro för mätad prissättning. Samtidigt: om du bara vill ha en enkel integration som ”logga en begäran till Sheets” kan Zapier eller Make gå snabbare att klicka ihop. Den verkliga frågan är hur mycket batchning och retry-logik du behöver. Prata med en automationsexpert om du är osäker på vad som passar.
När detta väl är på plats blir ditt Sheet kontrollpanelen. Du genererar, granskar och batchar med betydligt mindre tvekan.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.