Din innehållspipeline är förmodligen inte “svår”. Den är bara oändligt pillig. Idéer sprids ut, manus ligger kvar i utkast, filer hamnar i fel mapp, och delen där du “publicerar överallt” blir en daglig tidstjuv.
Den här Sheets Slack automation träffar social media managers först, ärligt talat. Men marknadsansvariga och små team som driver en innehållsmotor känner också av det, eftersom alla till slut gör samma copy-paste-jobb.
Det här arbetsflödet gör en enkel rad i Google Sheets till ett färdigt short-form-videopaket, publicerar på flera plattformar och skickar statusuppdateringar till Slack så att du alltid vet vad som faktiskt levererats.
Så fungerar den här automationen
Hela n8n-flödet, från trigger till slutresultat:
n8n Workflow Template: Google Sheets + Slack: viral videopostning enkelt
flowchart LR
subgraph sg0["Generate Baby Podcast 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/merge.svg' width='40' height='40' /></div><br/>Merge"]
n1["<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/>Merge1"]
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/merge.svg' width='40' height='40' /></div><br/>Merge2"]
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/code.svg' width='40' height='40' /></div><br/>Code2"]
n4["<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/>Extract And Combine Binary a.."]
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/code.svg' width='40' height='40' /></div><br/>Extract And Combine Binary a.."]
n6@{ icon: "mdi:robot", form: "rounded", label: "Baby Image Generator", 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/httprequest.dark.svg' width='40' height='40' /></div><br/>Open AI Generate Image"]
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/form.svg' width='40' height='40' /></div><br/>Generate Baby Podcast"]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Create Image Asset For Hedra"]
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/>Create Audio Asset For Hedra"]
n11@{ icon: "mdi:cog", form: "rounded", label: "B64 String to File", pos: "b", h: 48 }
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Post Open AI Image To Hedra"]
n13["<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/>Generate Video Asset Hedra"]
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 Our Baby Video File From.."]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Download Our Video"]
n16@{ icon: "mdi:cog", form: "rounded", label: "Upload Bin File To Conver In..", pos: "b", h: 48 }
n17@{ icon: "mdi:cog", form: "rounded", label: "Download Video", pos: "b", h: 48 }
n18@{ icon: "mdi:robot", form: "rounded", label: "Script", pos: "b", h: 48 }
n19["<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/>Audio Creation"]
n20["<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/>Audio To Hedra"]
n3 --> n13
n0 --> n5
n1 --> n4
n2 --> n3
n18 --> n19
n19 --> n10
n19 --> n1
n20 --> n2
n11 --> n0
n11 --> n9
n15 --> n16
n6 --> n7
n8 --> n6
n8 --> n18
n7 --> n11
n13 --> n14
n12 --> n2
n10 --> n1
n9 --> n0
n14 --> n15
n4 --> n20
n5 --> n12
n16 --> n17
end
subgraph sg1["When clicking ‘Execute workflow’ Flow"]
direction LR
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Generate Video"]
n22["<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"]
n23@{ icon: "mdi:swap-vertical", form: "rounded", label: "Result", pos: "b", h: 48 }
n24@{ icon: "mdi:cog", form: "rounded", label: "5 Minutes", pos: "b", h: 48 }
n25@{ icon: "mdi:database", form: "rounded", label: "Get Past Objects", pos: "b", h: 48 }
n26@{ icon: "mdi:robot", form: "rounded", label: "Prompt Agent", pos: "b", h: 48 }
n27@{ icon: "mdi:robot", form: "rounded", label: "Idea Agent", pos: "b", h: 48 }
n28@{ icon: "mdi:cog", form: "rounded", label: "Aggregate", pos: "b", h: 48 }
n29@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set Object List", pos: "b", h: 48 }
n33@{ icon: "mdi:database", form: "rounded", label: "Delete First Row", pos: "b", h: 48 }
n34@{ icon: "mdi:database", form: "rounded", label: "Append Object", pos: "b", h: 48 }
n35@{ icon: "mdi:robot", form: "rounded", label: "Object & Caption", pos: "b", h: 48 }
n36@{ icon: "mdi:cog", form: "rounded", label: "30 Seconds", pos: "b", h: 48 }
n38@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model", pos: "b", h: 48 }
n39@{ icon: "mdi:play-circle", form: "rounded", label: "When clicking ‘Execute workf..", pos: "b", h: 48 }
n23 --> n33
n24 --> n22
n28 --> n29
n36 --> n22
n22 --> n23
n22 --> n36
n27 --> n26
n26 --> n21
n21 --> n24
n29 --> n27
n33 --> n34
n25 --> n28
n35 -.-> n27
n38 -.-> n26
n38 -.-> n27
n39 --> n25
end
subgraph sg2["On form submission1 Flow"]
direction LR
n52@{ icon: "mdi:robot", form: "rounded", label: "Social Media Post", pos: "b", h: 48 }
n53["<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/>Keyword Research"]
n54@{ icon: "mdi:robot", form: "rounded", label: "Information Extractor", pos: "b", h: 48 }
n55@{ icon: "mdi:robot", form: "rounded", label: "Information Extractor1", pos: "b", h: 48 }
n56["<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/>Code"]
n57@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop Over Items", pos: "b", h: 48 }
n58["<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/>Article Research"]
n59@{ icon: "mdi:database", form: "rounded", label: "Append row in sheet", pos: "b", h: 48 }
n60@{ icon: "mdi:database", form: "rounded", label: "Append or update row in sheet", pos: "b", h: 48 }
n61@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model1", pos: "b", h: 48 }
n62["<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/>On form submission1"]
n56 --> n59
n57 --> n58
n58 --> n52
n53 --> n55
n52 --> n60
n61 -.-> n54
n61 -.-> n55
n59 --> n57
n62 --> n54
n54 --> n53
n55 --> n56
n60 --> n57
end
subgraph sg3["On form submission2 Flow"]
direction LR
n63@{ icon: "mdi:wrench", form: "rounded", label: "Think", pos: "b", h: 48 }
n64["<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/>Create Video"]
n65["<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"]
n66@{ icon: "mdi:robot", form: "rounded", label: "Ideas AI Agent", pos: "b", h: 48 }
n67@{ icon: "mdi:robot", form: "rounded", label: "Prompts AI Agent", pos: "b", h: 48 }
n68@{ icon: "mdi:cog", form: "rounded", label: "Wait for Veo3", pos: "b", h: 48 }
n69@{ icon: "mdi:robot", form: "rounded", label: "Parser", pos: "b", h: 48 }
n70@{ icon: "mdi:database", form: "rounded", label: "Add Prompt Idea To Spreadsheet", pos: "b", h: 48 }
n71@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model2", pos: "b", h: 48 }
n72["<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/>On form submission2"]
n63 -.-> n66
n63 -.-> n67
n69 -.-> n66
n65 --> n70
n64 --> n68
n68 --> n65
n66 --> n67
n67 --> n64
n71 -.-> n66
n71 -.-> n67
n72 --> n66
end
subgraph sg4["On form submission Flow"]
direction LR
n43["<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 Analysis"]
n44["<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/>Upload File "]
n45@{ icon: "mdi:cog", form: "rounded", label: "5 seconds", pos: "b", h: 48 }
n46["<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/>On form submission"]
n47@{ icon: "mdi:cog", form: "rounded", label: "Wait", pos: "b", h: 48 }
n48@{ icon: "mdi:swap-vertical", form: "rounded", label: "Video Analysis", pos: "b", h: 48 }
n47 --> n43
n45 --> n43
n43 --> n48
n43 --> n45
n44 --> n47
n46 --> n44
end
subgraph sg5["Flow 6"]
direction LR
n30["<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/>YouTube"]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>TikTok"]
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/>Instagram"]
n37["<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/>Upload"]
n37 --> n30
n37 --> n32
n37 --> n31
end
subgraph sg6["On form submission 2 Flow"]
direction LR
n40["<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/>Upload_File"]
n41["<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_Analysis"]
n42["<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/>On form submission 2"]
n49@{ icon: "mdi:swap-vertical", form: "rounded", label: "Edit Fields", pos: "b", h: 48 }
n40 --> n41
n41 --> n49
n42 --> n40
end
subgraph sg7["Flow 8"]
direction LR
n50["<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/>YouTube Video"]
n51@{ icon: "mdi:swap-vertical", form: "rounded", label: "Get Results", pos: "b", h: 48 }
n50 --> n51
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 n8,n39,n62,n72,n46,n42 trigger
class n6,n18,n26,n27,n35,n52,n54,n55,n66,n67,n69 ai
class n38,n61,n71 aiModel
class n63 ai
class n25,n33,n34,n59,n60,n70 database
class n7,n9,n10,n12,n13,n14,n15,n19,n20,n21,n22,n53,n58,n64,n65,n43,n44,n30,n31,n32,n37,n40,n41,n50 api
class n3,n4,n5,n56 code
class n42 disabled
classDef customIcon fill:none,stroke:none
class n0,n1,n2,n3,n4,n5,n7,n8,n9,n10,n12,n13,n14,n15,n19,n20,n21,n22,n53,n56,n58,n62,n64,n65,n72,n43,n44,n46,n30,n31,n32,n37,n40,n41,n42,n50 customIcon
Problemet: publicering av virala videor blir snabbt kaotisk
Konsekvens med kortformat ser enkelt ut på papper: välj en idé, skriv en hook, generera ett manus, producera media, publicera till TikTok/Reels/Shorts och följ sedan upp vad som gick live. I verkligheten stjäl varje “litet” steg fokus. Du tappar 10 minuter på att leta efter senaste caption, ytterligare 15 på att exportera rätt filversion, och sedan upprepar du det för varje plattform. Och när något fallerar (en render blev inte klar, en token gick ut, en uppladdning felar utan tydligt felmeddelande) får du ofta veta det först dagen efter. Det är så momentum dör.
Friktionen byggs på. Här är var det brukar haverera.
- Att publicera till tre plattformar en i taget kan sluka runt en timme per video när du räknar in formatering och kontroller.
- Hooks och captions börjar glida isär eftersom alla redigerar på olika ställen, så ditt “system” blir gissningslek.
- Statusuppdateringar finns i någons huvud, vilket gör att Slack pingas hela dagen med “är det här klart än?”
- Att spåra vad som publicerats (och vad som inte gjort det) blir ett rörigt kalkylblad du inte litar på.
Lösningen: en Google Sheets-till-Slack-innehållsmotor som också publicerar
Det här arbetsflödet använder n8n för att göra dina innehållsidéer till en repeterbar fabrik. Det börjar med att hämta tidigare objekt och prompts från Google Sheets, och använder sedan AI-agenter för att generera koncept, hooks, manus och strukturerade captions som håller sig konsekventa mellan format. När media behövs anropar det externa genererings- och render-endpoints (via HTTP-förfrågningar), slår ihop bild- och ljudströmmar och väntar tills renderingar är klara innan det går vidare. När den slutliga videofilen är redo laddar det upp media och publicerar till YouTube, TikTok och Instagram via API-anrop. Under hela körningen skriver det tillbaka resultat till Sheets så att du har en riktig källa till sanning, och skickar uppdateringar till Slack så att teamet ser progress utan att jaga den.
Arbetsflödet startar via en formulärinsändning eller en manuell körning i n8n. AI förbereder innehållspaketet, mediegenereringen skapar tillgångarna och publiceringsnoder pushar samma kreativa till varje kanal. Till sist gör loggning och Slack-notiser det synligt och repeterbart.
Vad du får: automation vs. resultat
| Vad arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du publicerar 5 shorts i veckan till tre plattformar. Manuellt: anta cirka 20 minuter per plattform (uppladdning, caption-justeringar, länkar, kontroller), vilket är ungefär 5 timmar i veckan bara för publicering. Med det här arbetsflödet lägger du in en idé i Google Sheets eller skickar in ett formulär, och låter rendering och publicering gå i bakgrunden. Din “hands-on”-tid blir cirka 10 minuter per video för att granska och godkänna, så du får tillbaka ungefär 4 timmar varje vecka.
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 Sheets för idéinmatning och loggning.
- Slack för att skicka status- och publiceringsuppdateringar.
- OpenAI API-nyckel (hämta den i din OpenAI-dashboard).
Kunskapsnivå: Medel. Du kopplar konton, lägger till några API-nycklar och testkör med exempeltader.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
En formulärinsändning eller manuell körning startar processen. Du kan trigga den manuellt i n8n för test, eller använda inbyggda formulär-triggers för att starta nya innehållsförfrågningar när de kommer in.
Google Sheets blir kontrollpanelen. Arbetsflödet hämtar tidigare objekt och prompts, aggregerar poster och definierar vad som behöver skapas härnäst. Det lägger också till och uppdaterar rader så att du kan se vad som genererats och vad som redan levererats.
AI genererar innehållspaketet. Agenter och chattmodeller bygger koncept och tar sedan fram manus och strukturerade captions som du kan återanvända i TikTok, Reels och Shorts utan att skriva om allt från noll.
Media genereras, slås ihop och publiceras. HTTP-förfrågningar skapar bild- och ljudtillgångar, arbetsflödet slår ihop binärdata, väntar på renderingar, laddar upp den färdiga filen och publicerar till varje plattform. Slack får uppdateringar så att teamet slipper gissa.
Du kan enkelt justera promptstilen så att den matchar din tonalitet utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: konfigurera formulärtriggern
Konfigurera ingående request-ingångar som startar medieproduktion och analys.
- Öppna Podcast Request Form och bekräfta att formulärfälten matchar era krav för podcastinlämning.
- Observera att Podcast Request Form skickar utdata parallellt till både Infant Image Creator och Script Generator.
- Gå igenom Form Trigger A, Form Trigger B, Form Trigger C och Form Trigger D om ni planerar att använda de kompletterande formulären för analys och idésamling.
- Behåll Manual Start Trigger för körningar på begäran av pipelinen för historiska objekt.
⚠️ Vanlig fallgrop: Om ni bara planerar att använda huvudflödet, inaktivera oanvända formulärtriggers för att undvika oväntade körningar.
Steg 2: anslut Google Sheets och Drive
Dessa noder lagrar prompts, objekt och mediereferenser och krävs för pipeline-tillståndet.
- Öppna Retrieve Past Objects, Append Sheet Row, Upsert Sheet Row, Add Prompt to Sheet, Remove First Row och Append Object Row, och välj mål-kalkylark och arbetsblad för var och en.
- Öppna Upload Binary to Drive och Retrieve Drive Video för att välja er mål-mapp i Google Drive.
- Credential Required: Anslut era Google Sheets-inloggningsuppgifter till alla Google Sheets-noder.
- Credential Required: Anslut era Google Drive-inloggningsuppgifter till Upload Binary to Drive och Retrieve Drive Video.
⚠️ Vanlig fallgrop: Det här arbetsflödet använder flera Sheets-noder (totalt 6). Säkerställ att varje nod pekar på rätt flik i kalkylarket för att undvika att data skrivs över.
Steg 3: konfigurera AI- och språkmodeller
Konfigurera OpenAI-baserad generering, agenter och parsers som driver manuskapande, prompt-bygge och strukturerade utdata.
- Öppna Infant Image Creator, Script Generator och Compose Social Post och anslut era OpenAI-inloggningsuppgifter.
- Öppna Chat Model A och säkerställ att den är ansluten som språkmodell för Prompt Builder Agent och Concept Agent.
- Öppna Chat Model B och säkerställ att den är ansluten som språkmodell för Data Extractor A och Data Extractor B.
- Öppna Chat Model C och säkerställ att den är ansluten som språkmodell för Ideas Agent och Prompts Agent.
- Observera: Parse Object Caption och Structured Parser är parser-undernoder, och Reasoning Tool är en AI-verktygsundernod. Lägg till credentials på överordnad nod (agenten eller OpenAI-chatmodellen), inte på undernoden.
⚠️ Vanlig fallgrop: OpenAI-noderna (Infant Image Creator, Script Generator, Compose Social Post och chatmodellerna) kräver credentials, men inga är konfigurerade i arbetsflödet. Lägg till dem innan ni testar.
Steg 4: konfigurera mediegenerering och Hedra-sammansättning
Koppla sekvensen för bild, ljud och Hedra-videosammansättning som producerar de slutliga medietillgångarna.
- Bekräfta att Infant Image Creator matar AI Image Request, som sedan matar Base64 File Converter.
- Observera att Base64 File Converter skickar utdata parallellt till både Combine Streams och Create Image Asset.
- Bekräfta att Script Generator skickar till Audio Synthesis, och att Audio Synthesis skickar utdata parallellt till både Create Audio Asset och Merge Inputs A.
- Verifiera merge-kedjan: Create Audio Asset → Merge Inputs A → Merge Binary Array → Send Audio to Hedra.
- Verifiera bildkedjan: Create Image Asset → Combine Streams → Merge Binary Array B → Send Image to Hedra.
- Bekräfta att både Send Audio to Hedra och Send Image to Hedra matar Merge Inputs B, därefter Transform Logic A och till sist Create Hedra Video Asset.
⚠️ Vanlig fallgrop: Det här arbetsflödet använder 24 httpRequest-noder. Säkerställ att varje API-endpoint, auth-header och payload är inställd så att den matchar era medietjänster.
Steg 5: konfigurera rendering, polling och videohämtning
Konfigurera renderingsloopen, polling-fördröjningar och slutlig mediehämtning till Google Drive.
- Säkerställ att Render Video Job skickar till Delay Five Minutes, som sedan skickar till Fetch Render Result.
- Bekräfta att Fetch Render Result loopar till Delay Thirty Seconds och skickar vidare till Set Render Output när den är klar.
- Verifiera att Set Render Output skickar till Remove First Row och därefter Append Object Row för att lagra den slutliga objektlistan.
- Bekräfta nedladdningskedjan: Create Hedra Video Asset → Fetch Hedra Video File → Download Video File → Upload Binary to Drive → Retrieve Drive Video.
Steg 6: konfigurera arbetsflöde för idégenerering och prompting
Konfigurera AI-idéspåret som driver promptlistan och flödet för skapande av uppgifter.
- Anslut Manual Start Trigger till Retrieve Past Objects, sedan till Aggregate Records och vidare till Define Object List.
- Säkerställ att Define Object List skickar till Concept Agent, som sedan skickar till Prompt Builder Agent och till sist Render Video Job.
- Bekräfta att Ideas Agent skickar till Prompts Agent, och sedan till Create Video Task → Wait for Render → Fetch Video Task → Add Prompt to Sheet.
- Gå igenom Structured Parser och Parse Object Caption för att säkerställa att de är kopplade till rätt överordnade AI-noder.
Steg 7: konfigurera analys och social distribution
Slutför analys-pipelinen och utdata för social distribution för det genererade mediet.
- Anslut analysflödet: Form Trigger A → Submit File → Pause Step → Fetch Analysis → Set Video Analysis.
- Bekräfta analys-API-flödet: Form Trigger B → Upload File API → Request Analysis API → Modify Fields.
- Konfigurera innehållsupptäckt: Form Trigger C → Data Extractor A → Keyword Discovery → Data Extractor B → Custom Script B → Append Sheet Row → Iterate Items.
- Säkerställ att Iterate Items routar till Article Lookup → Compose Social Post → Upsert Sheet Row.
- Verifiera kedjan för publicering av media: Upload Media skickar utdata parallellt till Publish to YouTube, Publish to Instagram och Publish to TikTok.
- Valfri uppslagning: YouTube Video Lookup → Set Result Values för metadata-berikning.
⚠️ Vanlig fallgrop: Noderna för social publicering är HTTP-requests. Validera varje endpoint och nödvändiga tokens för YouTube, Instagram och TikTok innan ni aktiverar.
Steg 8: testa och aktivera ert arbetsflöde
Kör ett fullständigt test för att säkerställa att alla grenar slutförs och att utdata lagras och publiceras korrekt.
- Klicka på Execute Workflow och skicka in en testpost via Podcast Request Form för att trigga huvudpipelinen.
- Verifiera att de parallella grenarna från Podcast Request Form når Infant Image Creator och Script Generator.
- Bekräfta att Upload Binary to Drive lagrar den slutliga filen och att Retrieve Drive Video returnerar en giltig länk.
- Kontrollera att Upsert Sheet Row och Append Object Row lägger till förväntade poster i Google Sheets.
- När testerna lyckas, slå på Active för att aktivera produktionskörningar.
Vanliga fallgropar
- Åtkomst till Google Sheets kan fallera om OAuth-scope inte inkluderar redigeringsrättigheter. Om loggningen stannar, kontrollera först n8n-inloggningskopplingen och delningsinställningarna för målarket.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in din tonalitet tidigt, annars kommer du att redigera utdata i all evighet.
Vanliga frågor
Oftast cirka 30 minuter om dina konton och API-nycklar är redo.
Nej. Du kopplar mest inloggningar och klistrar in API-nycklar. Den enda “tekniska” delen är att testköra med en exempeltad och justera prompter.
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 OpenAI API-kostnader (ofta några cent per körning) plus eventuella avgifter från mediegenereringsleverantörer du kopplar in.
Två alternativ: n8n Cloud (managed, enklast setup) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärt och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det är en av de enklaste justeringarna. Du kan inaktivera eller ta bort HTTP request-noderna “Publish to TikTok” och “Publish to Instagram” och sedan bara behålla “Publish to YouTube”. Vanliga anpassningar är att byta caption-stil i tolken för strukturerad output, ändra hook-formeln i prompten för manusskaparen och skriva tillbaka andra statusfält till Google Sheets.
Det är oftast en utgången token eller en Slack-app som inte fick åtkomst till rätt workspace eller kanal. Återanslut Slack-inloggningen i n8n och bekräfta sedan att kanalen fortfarande finns och att boten får posta där. Om det fungerar i tester men fallerar i produktionskörningar kan även rate limits eller blockerade länkar i meddelandeinnehållet vara orsaken.
Många, så länge dina API-begränsningar och render-leverantörer hänger med.
För innehållssystem som detta är n8n oftast bättre eftersom du kan förgrena, loopa, vänta på renderingar och slå ihop filer utan att betala extra för varje “avancerat” steg. Du får också möjlighet att self-hosta, vilket spelar roll när du kör frekventa batcher. Zapier och Make är fortfarande bra för snabba, enkla överlämningar, men de blir ofta klumpiga när du lägger till långa väntetider, hantering av binära filer eller publicering i flera steg. Om du är osäker: välj plattformen du kan förvalta nästa månad, inte bara den du kan klicka ihop i dag. Prata med en automationsexpert så hjälper vi dig att kvalitetssäkra valet.
När detta väl rullar slutar “publiceringsdagen” att vara panikartad. Arbetsflödet tar hand om det repetitiva så att du kan lägga tid på idéer 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.