{"product_id":"ai-youtube-video-generator-in-n8n-sheets-to-gpt-4o-script","title":"AI YouTube Video Generator in n8n: Sheets to GPT-4o Script","description":"\u003ch3\u003eTurn Google Sheets YouTube ideas into a rendered video—then publish only after approval\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow automates your YouTube pipeline: it pulls “to create” ideas from Google Sheets, uses \u003cstrong\u003eGPT-4o\u003c\/strong\u003e to generate a 14-scene script with voice + image prompts, renders the video via \u003cstrong\u003eJSON2Video\u003c\/strong\u003e, writes the output URL back to Sheets, and uploads to YouTube \u003cem\u003eonly\u003c\/em\u003e after a manual “approved” step.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eScheduled intake:\u003c\/strong\u003e Runs on a schedule and fetches the first Google Sheets row where \u003cstrong\u003ePRODUCTION STATUS\u003c\/strong\u003e is set to \u003cstrong\u003e“to create”\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGPT-4o scripting (JSON output):\u003c\/strong\u003e Sends the idea title, captions, and style fields to \u003cstrong\u003eOpenAI (GPT-4o)\u003c\/strong\u003e to generate a \u003cstrong\u003e14-scene JSON script\u003c\/strong\u003e with \u003cstrong\u003etwo-sentence voiceover text\u003c\/strong\u003e and \u003cstrong\u003ecinematic image prompts\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eMusic\/intro selection from Sheets:\u003c\/strong\u003e Reads the selected “final” music\/intro assets from a second Google Sheets tab.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eVideo rendering with JSON2Video:\u003c\/strong\u003e Submits the script, voice settings (via \u003cstrong\u003eElevenLabs\u003c\/strong\u003e), image model, and audio\/intro URLs to the \u003cstrong\u003eJSON2Video API\u003c\/strong\u003e to start rendering.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003ePolling + status handling:\u003c\/strong\u003e Waits, polls render status, and repeats until the render completes or errors out.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eWrites results to Sheets:\u003c\/strong\u003e On completion, saves the \u003cstrong\u003eJSON2Video movie URL\u003c\/strong\u003e back to Google Sheets and marks the row as \u003cstrong\u003ecreated\u003c\/strong\u003e; on failure, logs an error status.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eManual approval → YouTube publishing:\u003c\/strong\u003e When \u003cstrong\u003ePUBLISHING STATUS\u003c\/strong\u003e is set to \u003cstrong\u003e“approved”\u003c\/strong\u003e, it downloads the finished video from the stored URL, uploads it to \u003cstrong\u003eYouTube\u003c\/strong\u003e, applies privacy\/compliance status via the \u003cstrong\u003eYouTube Data API\u003c\/strong\u003e, and marks the row as \u003cstrong\u003epublished\u003c\/strong\u003e.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eSaaS teams producing repeatable YouTube content from a backlog managed in Google Sheets\u003c\/li\u003e\n  \u003cli\u003eAutomation engineers standardizing a GPT-4o → JSON2Video render workflow with controlled approvals\u003c\/li\u003e\n  \u003cli\u003eOperators who want “draft-ready” rendering tracked in Sheets before any YouTube upload\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGoogle Sheets\u003c\/strong\u003e (OAuth2) for intake, music\/intro selection, and status updates\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eOpenAI\u003c\/strong\u003e (GPT-4o) for generating the 14-scene JSON script\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eElevenLabs\u003c\/strong\u003e voice settings used in the JSON2Video request\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eJSON2Video API\u003c\/strong\u003e via HTTP Request using an API key auth credential\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eYouTube\u003c\/strong\u003e OAuth2 + \u003cstrong\u003eYouTube Data API\u003c\/strong\u003e for upload and privacy\/compliance settings\u003c\/li\u003e\n  \u003cli\u003eCore n8n logic nodes include: \u003cstrong\u003eif\u003c\/strong\u003e, \u003cstrong\u003ewait\u003c\/strong\u003e, \u003cstrong\u003eswitch\u003c\/strong\u003e, \u003cstrong\u003eHTTP Request\u003c\/strong\u003e, and YouTube integration nodes\u003c\/li\u003e\n  \u003cli\u003eSupplemented with workflow notes (Sticky Note) for clarity\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45962016555187,"sku":"N8N-19213","price":37.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/pBcHusGnQWoIS6WXSuGix_AQutqwqH.png?v=1788599463","url":"https:\/\/buyflowscripts.com\/products\/ai-youtube-video-generator-in-n8n-sheets-to-gpt-4o-script","provider":"N8N Commerce","version":"1.0","type":"link"}