{
  "name": "Convert YouTube transcripts in Google Sheets to X (Twitter) threads with Apify, OpenAI and RapidAPI",
  "nodes": [
    {
      "id": "b77a6784-1cd0-497c-9521-c0e7db423d5e",
      "name": "Workflow Configuration",
      "type": "n8n-nodes-base.set",
      "position": [
        -160,
        352
      ]
    },
    {
      "id": "f0d66aa3-4463-44f8-a273-3d2ce846bf89",
      "name": "Get YouTube Links from Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        352,
        352
      ]
    },
    {
      "id": "8094155e-bfb0-4c7f-badc-d051ae02cd70",
      "name": "Apify YouTube Transcript Scraper",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1216,
        352
      ]
    },
    {
      "id": "d766bda8-b2b9-47a5-bd2d-9b329d6856fe",
      "name": "Convert to Twitter Thread",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1584,
        352
      ]
    },
    {
      "id": "09bf8dd8-e87e-4145-b331-aee9d04ce969",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1584,
        608
      ]
    },
    {
      "id": "b4ff131e-372e-4ccf-8b00-5533567e7bb4",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1728,
        608
      ]
    },
    {
      "id": "e08f05ac-c109-41ba-ae26-5a065f00b1fe",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -480,
        352
      ]
    },
    {
      "id": "5deeea07-61de-4c59-aa15-596f8dfad320",
      "name": "Filter Unprocessed Links",
      "type": "n8n-nodes-base.filter",
      "position": [
        704,
        352
      ]
    },
    {
      "id": "60a3544e-3e26-4643-b276-e1eede6a51cc",
      "name": "Get One Link Only",
      "type": "n8n-nodes-base.limit",
      "position": [
        960,
        352
      ]
    },
    {
      "id": "b5a8d3f5-94ca-4c1d-a37a-470f6ec00f56",
      "name": "Mark Link as Processed",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2288,
        352
      ]
    },
    {
      "id": "8d7eab5e-0302-4704-8563-ce92ecb9dad1",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        144,
        -112
      ],
      "parameters": {
        "width": 480,
        "height": 640,
        "content": "## Google sheet template\n\nPrepare your google sheet in this format and configure this node to use that sheet. \n\n| Video | Processed |\n|-------|--------|\n| https://www.youtube.com/watch?v=example1 |No|"
      }
    },
    {
      "id": "3761b583-7d94-4c56-84a0-789bb9442af8",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -320,
        -112
      ],
      "parameters": {
        "width": 432,
        "height": 640,
        "content": "## Setting up credentials\n\n### 𝕏 Cookies\nFollow these steps to get the cookies:\n- Install [Cookie-Editor](https://chrome.google.com/webstore/detail/hlkenndednhfkekhgcdicdfddnkalmdm) chrome extension\n-"
      }
    },
    {
      "id": "bbe1566e-6275-4756-b8c9-7717774cd7c1",
      "name": "Publish Thread with RapidAPI/X API",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1984,
        352
      ]
    },
    {
      "id": "7a1ae79a-a2ea-422e-86db-1827288d918f",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1088,
        -112
      ],
      "parameters": {
        "width": 400,
        "height": 640,
        "content": "## Scrape youtube transcripts\nThis node uses [apify youtube transcript scraper](https://apify.com/supreme_coder/youtube-transcript-scraper?fpr=ve081) which is the cheapest transcript scraper available"
      }
    },
    {
      "id": "5a1ddd2c-47c3-4c26-a45e-08d8bb92f57f",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1856,
        -112
      ],
      "parameters": {
        "width": 352,
        "height": 640,
        "content": "## Create 𝕏 (Twitter) Thread\nThis node calls [X-API](https://rapidapi.com/heycuriouscoder/api/x-twitter-api2/playground/apiendpoint_1a09d2c4-6c90-4bec-98ca-7f325dd3c732) service on RapidAPI  to post t"
      }
    },
    {
      "id": "cfb36a6d-8c15-4515-9367-7f328ad6bcf6",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1104,
        -112
      ],
      "parameters": {
        "width": 512,
        "height": 1056,
        "content": "## Youtube to 𝕏 (Twitter) threads \n\nThis workflow lets you convert youtube video transcript to twitter thread using Google sheets, Apify and RapidAPI \n\n### Workflow summary\n1. Get unprocessed youtube "
      }
    }
  ],
  "connections": {
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Workflow Configuration",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get One Link Only": {
      "main": [
        [
          {
            "node": "Apify YouTube Transcript Scraper",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Convert to Twitter Thread",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Workflow Configuration": {
      "main": [
        [
          {
            "node": "Get YouTube Links from Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter Unprocessed Links": {
      "main": [
        [
          {
            "node": "Get One Link Only",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Convert to Twitter Thread",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Convert to Twitter Thread": {
      "main": [
        [
          {
            "node": "Publish Thread with RapidAPI/X API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get YouTube Links from Sheet": {
      "main": [
        [
          {
            "node": "Filter Unprocessed Links",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Apify YouTube Transcript Scraper": {
      "main": [
        [
          {
            "node": "Convert to Twitter Thread",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Publish Thread with RapidAPI/X API": {
      "main": [
        [
          {
            "node": "Mark Link as Processed",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}