{
  "name": "Transform YouTube videos to LinkedIn posts with Apify, GPT-4.1 Mini & Google Sheets",
  "nodes": [
    {
      "id": "f0406549-bb99-45b9-86dc-6ea2e5426fab",
      "name": "RSS Feed Trigger",
      "type": "n8n-nodes-base.rssFeedReadTrigger",
      "position": [
        208,
        368
      ]
    },
    {
      "id": "6f912873-c9de-493c-9d9a-a50a896fe4cb",
      "name": "Run an Actor and get dataset",
      "type": "@apify/n8n-nodes-apify.apify",
      "position": [
        624,
        368
      ]
    },
    {
      "id": "92edb466-0034-43c4-a937-d35c7f62aa77",
      "name": "Message a model",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        928,
        368
      ]
    },
    {
      "id": "e35b7e6e-8aee-4cf3-b858-ac7701f33caf",
      "name": "Code in JavaScript",
      "type": "n8n-nodes-base.code",
      "position": [
        1344,
        368
      ]
    },
    {
      "id": "d6e75636-0e5d-4699-a9a4-da0bca62d1d4",
      "name": "Append row in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1584,
        640
      ]
    },
    {
      "id": "ad264b8d-a481-4d95-9cf9-39083f101aec",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1584,
        368
      ]
    },
    {
      "id": "d940b31e-9844-4c00-bef3-5b32d3a03567",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -32,
        -192
      ],
      "parameters": {
        "width": 1072,
        "height": 128,
        "content": "## YouTube to LinkedIn Content Engine\n\nThis automation monitors a YouTube channel for new videos, automatically extracts the transcript, uses AI to generate two distinct, ready-to-publish LinkedIn pos"
      }
    },
    {
      "id": "8bff5219-9818-4bc3-8639-9436ab98e2c5",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        288
      ],
      "parameters": {
        "width": 368,
        "height": 432,
        "content": "## 1. 📰 RSS Feed (Trigger)\n\n\n\n\n\n\n\n\n\n\n\n\n\n**Description:**  \nThe workflow's starting point. This node watches a YouTube channel for new video uploads using its unique RSS feed URL and triggers the autom"
      }
    },
    {
      "id": "b947839f-cd2a-4ec4-ad68-d920e0483bf0",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        496,
        80
      ],
      "parameters": {
        "width": 336,
        "height": 256,
        "content": "## 2. 🕷️ Apify\n\n**Description:**  \nThis node executes an Apify “actor” to scrape the full text transcript from the new video URL provided by the RSS trigger.\n\n**Configuration:**  \nSet to **Run an Acto"
      }
    },
    {
      "id": "e8945fc8-610a-41df-8f12-3cf18bc1e824",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        880,
        576
      ],
      "parameters": {
        "width": 336,
        "height": 304,
        "content": "## 3. 🤖 OpenAI Chat Model \n\n\n**Description:**  \nThis AI content generator node sends the full transcript to an advanced model (like `gpt-4o`) along with a highly specific prompt.\n\n**Configuration:**  "
      }
    },
    {
      "id": "81951797-3890-4504-97e9-f09124b296e7",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1152,
        16
      ],
      "parameters": {
        "width": 464,
        "height": 304,
        "content": "## 4. 💻 Code\n\n**Description:**  \nThe OpenAI node outputs its JSON as a single text string. This node converts that string into a structured array of post objects.\n\nIt uses the following logic:\n\n```jav"
      }
    },
    {
      "id": "5a568cde-c21d-4783-a40a-16c039248639",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1776,
        384
      ],
      "parameters": {
        "width": 368,
        "height": 192,
        "content": "## 5. 🔀📊 Split & Save (Google Sheets)\n\n**Description:**\nThese two nodes take the array of AI-generated posts, process each one individually, and append it as a new row in Google Sheets."
      }
    }
  ],
  "connections": {
    "Split Out": {
      "main": [
        [
          {
            "node": "Append row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Message a model": {
      "main": [
        [
          {
            "node": "Code in JavaScript",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS Feed Trigger": {
      "main": [
        [
          {
            "node": "Run an Actor and get dataset",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code in JavaScript": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Run an Actor and get dataset": {
      "main": [
        [
          {
            "node": "Message a model",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}