{
  "name": "Convert YouTube videos into SEO blog posts using WayinVideo and GPT-4o-mini",
  "nodes": [
    {
      "id": "4db758a2-824e-4ed2-a6ed-311e9fca7dca",
      "name": "Receive Video URL",
      "type": "n8n-nodes-base.webhook",
      "position": [
        736,
        288
      ]
    },
    {
      "id": "374c8d7e-bb40-4991-bf27-17e3f1c1e649",
      "name": "Submit Transcription — Wayin",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1008,
        288
      ]
    },
    {
      "id": "eceab34e-fb90-4989-a3e9-5619a06a0c9b",
      "name": "Poll Transcription Status",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1216,
        288
      ]
    },
    {
      "id": "5b344110-2c51-46b1-a574-ef7dd964fe96",
      "name": "Wait 5 Seconds",
      "type": "n8n-nodes-base.wait",
      "position": [
        1440,
        288
      ]
    },
    {
      "id": "7a1496a8-2633-4b21-9f5b-a4b40f3a3737",
      "name": "Is Transcription Complete?",
      "type": "n8n-nodes-base.if",
      "position": [
        1632,
        288
      ]
    },
    {
      "id": "409711de-cb37-4cf1-9110-3052a6e45639",
      "name": "Process Transcript Data",
      "type": "n8n-nodes-base.code",
      "position": [
        1904,
        272
      ]
    },
    {
      "id": "4083e98c-4150-43bc-b98e-5031a9cba167",
      "name": "Generate SEO Blog Post",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2320,
        272
      ]
    },
    {
      "id": "58973e0c-b8de-4ae6-b26b-afb5ca3bc21d",
      "name": "GPT Model — Blog Generator",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2320,
        448
      ]
    },
    {
      "id": "cab08fad-09de-4855-9bd8-452de4bfbd31",
      "name": "Parse Blog JSON Output",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        2496,
        480
      ]
    },
    {
      "id": "d37fc4bf-ef2e-44a4-9c88-3e3c0879fa79",
      "name": "GPT Model — Output Parser",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2496,
        656
      ]
    },
    {
      "id": "07bf8d0a-99c3-4385-a25f-7103bf017113",
      "name": "Save to Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3024,
        272
      ]
    },
    {
      "id": "5e78d275-841b-4a9b-a751-c1952a3d477c",
      "name": "Return Success Response",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        3280,
        272
      ]
    },
    {
      "id": "1f0b8c25-6c78-44cb-99af-cb0aa3d85bfb",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        672,
        48
      ],
      "parameters": {
        "width": 272,
        "height": 288,
        "content": "## 1. Receive Video URL\n\nWebhook listens for a POST request containing the video URL.\n\n**Method:** POST\n**Body:** `{ \"url\": \"https://youtube.com/watch?v=...\" }`"
      }
    },
    {
      "id": "afd89d2f-58f5-4ab1-be51-981488de28f2",
      "name": "📋 Workflow Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        176,
        -128
      ],
      "parameters": {
        "width": 452,
        "height": 836,
        "content": "**Video → SEO Blog Post — Automated Pipeline**\n\nAutomatically convert any video URL into a fully structured SEO blog post using **Wayin AI transcription** + **GPT-4o-mini**. Paste a video link, get a "
      }
    },
    {
      "id": "e71a31a5-d57f-441d-b247-0b658ed74ad8",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1008,
        48
      ],
      "parameters": {
        "width": 304,
        "height": 288,
        "content": "## 2. Send to Wayin for Transcription\n\nSubmits the video URL to WayinVideo AI — an accurate multilingual transcription API — and receives a unique job ID in return.\n\n🔗 Learn more: https://wayin.ai"
      }
    },
    {
      "id": "088f724d-af62-4ce5-812f-6886cc244554",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1392,
        48
      ],
      "parameters": {
        "width": 384,
        "height": 288,
        "content": "## 3. Poll Until Transcription Completes\n\nFetches job status every 5 seconds using the job ID.\n\n- ✅ Status = SUCCEEDED → move forward\n- 🔁 Any other status → wait and re-poll"
      }
    },
    {
      "id": "7ce27e12-cfc3-42fa-9e95-3cc9c2324d71",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1824,
        48
      ],
      "parameters": {
        "width": 320,
        "height": 272,
        "content": "## 4. Process Transcript Data\n\nJoins all transcript segments into one clean text block.\nCalculates total word count and video duration in minutes."
      }
    },
    {
      "id": "9fff704a-8e67-4499-b7de-a1fa8b1a0a27",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2176,
        32
      ],
      "parameters": {
        "width": 656,
        "height": 288,
        "content": "## 5. Generate SEO Blog Post with AI\n\nAI Agent (GPT-4o-mini) writes a full structured blog post from the transcript:\n\n- SEO title, meta description, URL slug\n- H2 sections with 300+ words each\n- Key t"
      }
    },
    {
      "id": "37954791-54e9-42b1-8dbb-c64518f70daf",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2880,
        32
      ],
      "parameters": {
        "width": 560,
        "height": 288,
        "content": "## 6. Save Draft & Respond\n\nAppends the complete blog post as a new row in Google Sheets.\n\n- Status set to: Draft\n- Includes: date, video URL, word count, read time\n- Webhook returns success confirmat"
      }
    }
  ],
  "connections": {
    "Wait 5 Seconds": {
      "main": [
        [
          {
            "node": "Is Transcription Complete?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Receive Video URL": {
      "main": [
        [
          {
            "node": "Submit Transcription — Wayin",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save to Google Sheets": {
      "main": [
        [
          {
            "node": "Return Success Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate SEO Blog Post": {
      "main": [
        [
          {
            "node": "Save to Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Blog JSON Output": {
      "ai_outputParser": [
        [
          {
            "node": "Generate SEO Blog Post",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Process Transcript Data": {
      "main": [
        [
          {
            "node": "Generate SEO Blog Post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Poll Transcription Status": {
      "main": [
        [
          {
            "node": "Wait 5 Seconds",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Is Transcription Complete?": {
      "main": [
        [
          {
            "node": "Process Transcript Data",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Poll Transcription Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "GPT Model — Output Parser": {
      "ai_languageModel": [
        [
          {
            "node": "Parse Blog JSON Output",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "GPT Model — Blog Generator": {
      "ai_languageModel": [
        [
          {
            "node": "Generate SEO Blog Post",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Submit Transcription — Wayin": {
      "main": [
        [
          {
            "node": "Poll Transcription Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}