{
  "workflow": {
    "id": 3776,
    "name": "Turn YouTube RSS videos into social posts with Dumpling AI and Airtable",
    "views": 672,
    "recentViews": 0,
    "totalViews": 672,
    "createdAt": "2025-04-28T19:22:10.875Z",
    "description": "\n### Who is this for?\n\nThis workflow is for content creators, social media managers, marketing teams, and virtual assistants who want to automatically repurpose YouTube videos into ready-to-post social media content. If you need to quickly turn long-form videos into short posts for platforms like Instagram, Facebook, or LinkedIn, this workflow saves you hours of manual work.\n\n---\n\n### What problem is this workflow solving?\n\nManually extracting ideas from YouTube videos, writing captions, creating images, and preparing social media posts takes a lot of time and effort.  \nThis workflow automates the entire process: it reads the video, generates posts with captions and AI images, and organizes everything into Airtable.  \nIt lets you focus more on growing your audience instead of spending hours repurposing content.\n\n---\n\n### What this workflow does\n\n1. Watches a YouTube channel RSS feed for new videos.\n2. Extracts the video transcript automatically using Dumpling AI.\n3. Summarizes and transforms the transcript into 3 social media captions (Instagram, Facebook, LinkedIn) using OpenAI.\n4. Generates 3 unique AI image prompts.\n5. Sends the prompts to Dumpling AI to create realistic social media images.\n6. Saves the captions and attaches the AI images into Airtable, ready for posting.\n\n---\n\n### Setup\n\n1. **RSS Feed Setup**  \n   - Get your YouTube channel’s RSS feed URL.\n   - Insert the URL into the RSS Trigger node.\n   - This will monitor for new YouTube uploads automatically.\n\n2. **Dumpling AI Setup for Transcript Extraction**  \n   - Sign up at [Dumpling AI](https://app.dumplingai.com).\n   - Get your Dumpling AI API Key.\n   - In the first HTTP Request node after the RSS trigger, insert your API Key (use HTTP Header Authentication).\n   - This sends the YouTube URL to Dumpling AI’s `/extract-transcript` endpoint.\n\n3. **OpenAI Setup for Caption and Prompt Generation**  \n   - Get your OpenAI API Key.\n   - In the OpenAI node, connect your account.\n   - The AI will:\n     - Generate 3 platform-specific captions.\n     - Generate 3 creative prompts to design images related to the video.\n\n4. **Edit Fields Node**  \n   - This node organizes the generated captions and prompts into separate fields for easy Airtable mapping.\n   - Captions are split for Instagram, Facebook, and LinkedIn.\n\n5. **Dumpling AI Setup for AI Image Generation**  \n   - After the Edit Fields node, the second HTTP Request node sends the image prompt to Dumpling AI’s `/generate-image` endpoint.\n   - This returns a realistic AI-generated image.\n\n6. **Airtable Setup for Saving Posts (Without Image First)**  \n   - Create a new base in Airtable with the following fields:\n     - `Platform` (Single select: Instagram, Facebook, LinkedIn)\n     - `Content` (Long text field)\n     - `Image` (Attachment field)\n   - Connect your Airtable Personal Access Token to the Airtable node.\n   - The Airtable node saves the generated captions into separate records, initially without images.\n\n7. **Upload Generated Images Back to Airtable**  \n   - The third HTTP Request node PATCHES the Airtable record.\n   - It updates the `Image` field with the generated AI image from Dumpling AI.\n\n8. **Credentials Required**  \n   - **Dumpling AI API Key** (for transcript extraction and AI image generation)  \n   - **OpenAI API Key** (for caption and prompt creation)  \n   - **Airtable Personal Access Token** (for inserting and updating records)\n\n---\n\n### How to customize this workflow to your needs\n\n- Change the OpenAI prompt to generate captions in your brand tone (e.g., friendly, professional, witty).\n- Modify the image prompts to match your design style better.\n- Adjust the Airtable base fields if you want to add more platforms or content formats.\n- Add scheduling tools like Buffer or Metricool to automatically post from Airtable.\n\n---\n\n### ⚡ Quick Tips\n\n- Make sure Dumpling AI credits are active to allow transcript and image generation.  \n- Set Airtable permissions properly so PATCH requests can update attachments.  \n\n",
    "workflow": {
      "id": "Idv3YrtHuN8pEkbi",
      "meta": {
        "instanceId": "a1ae5c8dc6c65e674f9c3947d083abcc749ef2546dff9f4ff01de4d6a36ebfe6",
        "templateCredsSetupCompleted": true
      },
      "name": "Repurpose YouTube videos to social media posts with RSS, Dumpling AI, Airtable",
      "tags": [
        {
          "id": "TlcNkmb96fUfZ2eA",
          "name": "Tutorials",
          "createdAt": "2025-04-15T17:02:00.249Z",
          "updatedAt": "2025-04-15T17:02:00.249Z"
        }
      ],
      "nodes": [
        {
          "id": "9f1aae06-32fd-4880-a960-67b322d6ff47",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1900,
            -1100
          ],
          "parameters": {
            "width": 880,
            "height": 800,
            "content": "## 🎯 Goal\nRepurpose YouTube videos to social media posts with RSS, Dumpling AI, Airtable\n\n---\n\n## 🔄 Workflow Steps\n\n### 1. RSS Trigger\n- Triggers when a new video appears in the YouTube feed.\n\n### 2. Dumpling AI - YouTube Transcript\n- Extracts the transcript from the YouTube video link.\n\n### 3. OpenAI - Generate Social Media Content + Image Prompts\n- Based on the transcript, creates posts for Instagram, Facebook, and LinkedIn.\n- Also generates image prompts for each platform.\n\n### 4. Edit field Node - Structure Fields\n- Extracts and organizes content:\n  - Posts for each platform\n  - Image prompts for each platform\n\n---\n\n## 🖼️ Image Generation (Dumpling AI)\n- **IG_Image:** Uses Instagram image prompt\n- **Facebook_Image:** Uses Facebook image prompt\n- **LinkedIn_Images:** Uses LinkedIn image prompt\n\n---\n\n## 📥 Save to Airtable (Content)\n- Saves each platform’s post and platform label into Airtable.\n\n## 📎 Upload Image to Airtable (Attachment)\n- PATCH requests update the corresponding record in Airtable with the generated image URL for each platform.\n\n---\n\n## 🔁 Notes\n- Image prompt and post must match by platform.\n- Make sure the record IDs are tracked correctly to attach images to the right row.\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "ef41e143-4f0b-4ec1-9725-970b76b86bf6",
          "name": "Sticky Note1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -260,
            -1160
          ],
          "parameters": {
            "color": 3,
            "width": 900,
            "height": 680,
            "content": "### 🖼️ Generate & Upload Platform-Specific Content\n\nEach branch in this section handles one platform (Instagram, Facebook, or LinkedIn). Here's how they work:\n\n1. **AI Image Generation (Dumpling AI)**  \n   - Each branch uses a specific image prompt (from earlier GPT output) to generate a custom AI image using Dumpling AI's `generate-ai-image` endpoint.\n\n2. **Save Content to Airtable**  \n   - Posts generated for each platform are saved in Airtable using their respective nodes (`Instagram`, `Facebook`, `LinkedIn`). Platform labels and post text are included.\n\n3. **Attach Image to Airtable Record**  \n   - Once the image is generated, the matching image URL is patched into the correct Airtable row (as an attachment), keeping content and media organized under one record.\n\n💡 *All three branches follow the same flow structure, ensuring consistent results across platforms.*\n"
          },
          "typeVersion": 1
        },
        {
          "id": "3c276ae5-2805-4798-bf58-9ba30be10af8",
          "name": "Get YouTube Transcript",
          "type": "n8n-nodes-base.httpRequest",
          "notes": "HTTP REQUEST",
          "position": [
            -900,
            -520
          ],
          "parameters": {
            "url": "https://app.dumplingai.com/api/v1/get-youtube-transcript",
            "method": "POST",
            "options": {},
            "jsonBody": "={\n  \"videoUrl\": \"{{ $json.link }}\", \n  \"includeTimestamps\": \"true\",\n  \"preferredLanguage\": \"en\"\n}",
            "sendBody": true,
            "sendHeaders": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "headerParameters": {
              "parameters": [
                {
                  "name": "Content-Type",
                  "value": "application/json"
                }
              ]
            }
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "notesInFlow": false,
          "typeVersion": 4.2
        },
        {
          "id": "fc352059-0027-4727-9836-0b4ee7761aa4",
          "name": "Generate Social Posts + Image Prompts",
          "type": "@n8n/n8n-nodes-langchain.openAi",
          "position": [
            -680,
            -520
          ],
          "parameters": {
            "modelId": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-4o-mini",
              "cachedResultName": "GPT-4O-MINI"
            },
            "options": {},
            "messages": {
              "values": [
                {
                  "role": "system",
                  "content": "=You are a content marketer and creative strategist. I will paste the transcript of a YouTube video. Your job is to generate engaging social media content and image generation prompts from it.\n\nHere’s what I need you to do:\n\n1. Read the transcript and identify the core message.\n2. Generate 3 platform-specific social media posts using the core message:\n   - Instagram: short, casual, friendly tone, can include emojis.\n   - Facebook: conversational and storytelling tone, slightly longer.\n   - LinkedIn: professional, insightful, and value-driven.\n3. For each platform, also create an image prompt that could be used to generate a relevant image using an AI image generator.\n   - The image prompt should reflect the post content and message.\n   - Be specific and descriptive enough for an AI to understand what to generate.\n\n🎯 All output must be returned in the following **JSON format**:\n\n```json\n{\n  \"instagram\": {\n    \"post\": \"[Instagram-style caption]\",\n    \"image_prompt\": \"[Image generation prompt for Instagram]\"\n  },\n  \"facebook\": {\n    \"post\": \"[Facebook-style caption]\",\n    \"image_prompt\": \"[Image generation prompt for Facebook]\"\n  },\n  \"linkedin\": {\n    \"post\": \"[LinkedIn-style caption]\",\n    \"image_prompt\": \"[Image generation prompt for LinkedIn]\"\n  }\n}\n\n"
                },
                {
                  "content": "=Here is the transcript:{{ $json.transcript }}"
                }
              ]
            },
            "jsonOutput": true
          },
          "credentials": {
            "openAiApi": {
              "id": "credential-id",
              "name": "openAiApi Credential"
            }
          },
          "typeVersion": 1.8
        },
        {
          "id": "2fd29a20-e47e-4d4b-88c3-92b9fcee53e7",
          "name": "Structure Posts & Prompts by Platform",
          "type": "n8n-nodes-base.set",
          "position": [
            -300,
            -520
          ],
          "parameters": {
            "options": {},
            "assignments": {
              "assignments": [
                {
                  "id": "46d587df-2be4-43f1-a83f-829077d6e926",
                  "name": "Instagram",
                  "type": "string",
                  "value": "={{ $json.message.content.instagram.post }}"
                },
                {
                  "id": "b35c63a3-ecd9-4db5-a602-30d657e06f6a",
                  "name": "Facebook",
                  "type": "string",
                  "value": "={{ $json.message.content.facebook.post }}"
                },
                {
                  "id": "e10d0a60-0c87-4e46-b4d5-89325a84a923",
                  "name": "Linkedin",
                  "type": "string",
                  "value": "={{ $json.message.content.linkedin.post }}"
                },
                {
                  "id": "00900a41-b5a7-47cb-a448-3020e8c711f8",
                  "name": "IG Image Prompt",
                  "type": "string",
                  "value": "={{ $json.message.content.instagram.image_prompt }}"
                },
                {
                  "id": "35cf902a-40d0-4484-adeb-808438f42327",
                  "name": "Facebook Image prompt",
                  "type": "string",
                  "value": "={{ $json.message.content.facebook.image_prompt }}"
                },
                {
                  "id": "c2377411-8b32-4974-b7cb-c6d2c79f584f",
                  "name": "LinkedIn Image prompt",
                  "type": "string",
                  "value": "={{ $json.message.content.linkedin.image_prompt }}"
                }
              ]
            }
          },
          "typeVersion": 3.4
        },
        {
          "id": "2a911a93-4295-45bd-817d-6ab90a8a9d53",
          "name": "Generate Instagram Image",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            -80,
            -720
          ],
          "parameters": {
            "url": "https://app.dumplingai.com/api/v1/generate-ai-image",
            "method": "POST",
            "options": {},
            "jsonBody": "={\n  \"model\": \"FLUX.1-schnell\",\n  \"input\": {\n    \"prompt\": \"{{ $json['IG Image Prompt'] }}\",\n    \"num_outputs\": 1,\n    \"aspect_ratio\": \"1:1\",\n    \"output_quality\": 80,\n    \"num_inference_steps\": 4,\n    \"disable_safety_checker\": false,\n    \"go_fast\": true,\n    \"megapixels\": \"1\"\n  }\n}\n",
            "sendBody": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth"
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "858ffccc-d16d-4706-82db-a8cdc50c814e",
          "name": "Generate Facebook Image",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            -80,
            -520
          ],
          "parameters": {
            "url": "https://app.dumplingai.com/api/v1/generate-ai-image",
            "method": "POST",
            "options": {},
            "jsonBody": "={\n  \"model\": \"FLUX.1-schnell\",\n  \"input\": {\n    \"prompt\": \"{{ $json['Facebook Image prompt'] }}\",\n    \"num_outputs\": 1,\n    \"aspect_ratio\": \"1:1\",\n    \"output_quality\": 80,\n    \"num_inference_steps\": 4,\n    \"disable_safety_checker\": false,\n    \"go_fast\": true,\n    \"megapixels\": \"1\"\n  }\n}\n",
            "sendBody": true,
            "sendHeaders": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "headerParameters": {
              "parameters": [
                {
                  "name": "Content-Type",
                  "value": "Authorization"
                }
              ]
            }
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "cc8795e2-ceed-4bc1-ab87-2855fbc05001",
          "name": "Generate LinkedIn Image (Dumpling AI)",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            -80,
            -320
          ],
          "parameters": {
            "url": "https://app.dumplingai.com/api/v1/generate-ai-image",
            "method": "POST",
            "options": {},
            "jsonBody": "={\n  \"model\": \"FLUX.1-schnell\",\n  \"input\": {\n    \"prompt\": \"{{ $json['LinkedIn Image prompt'] }}\",\n    \"num_outputs\": 1,\n    \"aspect_ratio\": \"1:1\",\n    \"output_quality\": 80,\n    \"num_inference_steps\": 4,\n    \"disable_safety_checker\": false,\n    \"go_fast\": true,\n    \"megapixels\": \"1\"\n  }\n}\n",
            "sendBody": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth"
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "4952fae2-452b-4ef9-91fe-99cc32257f6d",
          "name": "Upload Instagram Image to Airtable",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            360,
            -720
          ],
          "parameters": {
            "url": "=https://api.airtable.com/v0/appPSvSKdA6075xJC/tblmqgjEwgIR6rpUZ/{{ $json.id }}",
            "method": "PATCH",
            "options": {},
            "jsonBody": "={\n  \"fields\": {\n    \"Attachments\": [\n      {\n        \"url\": \"{{ $('Generate Instagram Image').item.json.images[0].url }}\"\n      }\n    ]\n  }\n}\n",
            "sendBody": true,
            "sendHeaders": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "headerParameters": {
              "parameters": [
                {}
              ]
            }
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "f9e19874-d41d-46fd-b5b6-56f38c10ec00",
          "name": "Upload Facebook Image to Airtable",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            360,
            -520
          ],
          "parameters": {
            "url": "=https://api.airtable.com/v0/appPSvSKdA6075xJC/tblmqgjEwgIR6rpUZ/{{ $json.id }}",
            "method": "PATCH",
            "options": {},
            "jsonBody": "={\n  \"fields\": {\n    \"Attachments\": [\n      {\n        \"url\": \"{{ $('Generate Facebook Image').item.json.images[0].url }}\"\n      }\n    ]\n  }\n}\n",
            "sendBody": true,
            "sendHeaders": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "headerParameters": {
              "parameters": [
                {}
              ]
            }
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "d20478e3-cdcb-46da-ad16-6b37e45dfb31",
          "name": "Upload LinkedIn Image to Airtable",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            360,
            -320
          ],
          "parameters": {
            "url": "=https://api.airtable.com/v0/appPSvSKdA6075xJC/tblmqgjEwgIR6rpUZ/{{ $json.id }}",
            "method": "PATCH",
            "options": {},
            "jsonBody": "={\n  \"fields\": {\n    \"Attachments\": [\n      {\n        \"url\": \"{{ $('Generate LinkedIn Image (Dumpling AI)').item.json.images[0].url }}\"\n      }\n    ]\n  }\n}\n\n",
            "sendBody": true,
            "sendHeaders": true,
            "specifyBody": "json",
            "authentication": "genericCredentialType",
            "genericAuthType": "httpHeaderAuth",
            "headerParameters": {
              "parameters": [
                {}
              ]
            }
          },
          "credentials": {
            "httpHeaderAuth": {
              "id": "credential-id",
              "name": "httpHeaderAuth Credential"
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "56ecd56e-29c2-400b-8d54-b3cf43550fe6",
          "name": "Save Instagram Caption to Airtable",
          "type": "n8n-nodes-base.airtable",
          "position": [
            140,
            -720
          ],
          "parameters": {
            "base": {
              "__rl": true,
              "mode": "list",
              "value": "",
              "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC",
              "cachedResultName": "Testing n8n"
            },
            "table": {
              "__rl": true,
              "mode": "list",
              "value": "",
              "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC/tblmqgjEwgIR6rpUZ",
              "cachedResultName": "Table 1"
            },
            "columns": {
              "value": {
                "Content": "={{ $('Structure Posts & Prompts by Platform').item.json.Instagram }}",
                "Platform": "Instagram"
              },
              "schema": [
                {
                  "id": "ID",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "readOnly": true,
                  "required": false,
                  "displayName": "ID",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Platform",
                  "type": "options",
                  "display": true,
                  "options": [
                    {
                      "name": "Instagram",
                      "value": "Instagram"
                    },
                    {
                      "name": "Facebook",
                      "value": "Facebook"
                    },
                    {
                      "name": "Linkdin",
                      "value": "Linkdin"
                    }
                  ],
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Platform",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Attachments",
                  "type": "array",
                  "display": true,
                  "removed": true,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Attachments",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Content",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Content",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "create"
          },
          "credentials": {
            "airtableTokenApi": {
              "id": "credential-id",
              "name": "airtableTokenApi Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "6159ec29-6cd6-42fe-8ed7-b21c1d51052a",
          "name": "Save Facebook Caption to Airtable",
          "type": "n8n-nodes-base.airtable",
          "position": [
            140,
            -520
          ],
          "parameters": {
            "base": {
              "__rl": true,
              "mode": "list",
              "value": "",
              "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC",
              "cachedResultName": "Testing n8n"
            },
            "table": {
              "__rl": true,
              "mode": "list",
              "value": "",
              "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC/tblmqgjEwgIR6rpUZ",
              "cachedResultName": "Table 1"
            },
            "columns": {
              "value": {
                "Content": "={{ $('Structure Posts & Prompts by Platform').item.json.Facebook }}",
                "Platform": "Facebook"
              },
              "schema": [
                {
                  "id": "ID",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": true,
                  "required": false,
                  "displayName": "ID",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Platform",
                  "type": "options",
                  "display": true,
                  "options": [
                    {
                      "name": "Instagram",
                      "value": "Instagram"
                    },
                    {
                      "name": "Facebook",
                      "value": "Facebook"
                    },
                    {
                      "name": "Linkdin",
                      "value": "Linkdin"
                    }
                  ],
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Platform",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Attachments",
                  "type": "array",
                  "display": true,
                  "removed": true,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Attachments",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Content",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Content",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "create"
          },
          "credentials": {
            "airtableTokenApi": {
              "id": "credential-id",
              "name": "airtableTokenApi Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "ee533597-a43d-42e9-88a2-1516cb23561c",
          "name": "Save LinkedIn Caption to Airtable",
          "type": "n8n-nodes-base.airtable",
          "position": [
            140,
            -320
          ],
          "parameters": {
            "base": {
              "__rl": true,
              "mode": "list",
              "value": "",
              "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC",
              "cachedResultName": "Testing n8n"
            },
            "table": {
              "__rl": true,
              "mode": "list",
              "value": "",
              "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC/tblmqgjEwgIR6rpUZ",
              "cachedResultName": "Table 1"
            },
            "columns": {
              "value": {
                "Content": "={{ $('Structure Posts & Prompts by Platform').item.json.Linkedin }}",
                "Platform": "Linkdin"
              },
              "schema": [
                {
                  "id": "ID",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "readOnly": true,
                  "required": false,
                  "displayName": "ID",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Platform",
                  "type": "options",
                  "display": true,
                  "options": [
                    {
                      "name": "Instagram",
                      "value": "Instagram"
                    },
                    {
                      "name": "Facebook",
                      "value": "Facebook"
                    },
                    {
                      "name": "Linkdin",
                      "value": "Linkdin"
                    }
                  ],
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Platform",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Attachments",
                  "type": "array",
                  "display": true,
                  "removed": true,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Attachments",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Content",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Content",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "create"
          },
          "credentials": {
            "airtableTokenApi": {
              "id": "credential-id",
              "name": "airtableTokenApi Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "6b7d7bc3-796a-4da4-a204-a96bae305507",
          "name": "Get YouTube Uploads",
          "type": "n8n-nodes-base.rssFeedReadTrigger",
          "notes": "\n\n",
          "position": [
            -1180,
            -520
          ],
          "parameters": {
            "feedUrl": "https://rss.app/feeds/FmN1GIARUeCC6ELF.xml",
            "pollTimes": {
              "item": [
                {}
              ]
            }
          },
          "notesInFlow": true,
          "typeVersion": 1
        }
      ],
      "active": false,
      "pinData": {
        "Get YouTube Transcript": [
          {
            "json": {
              "language": "en",
              "transcript": "00:00 - have you ever found yourself scrolling through your favorite podcasts and just feeling overwhelmed by the amount of content you've got to go through and if you do find the right content there's\n00:09 - still so many episodes out there to go through and not enough time in the day to do so sometimes uh we just want a summary of a podcast episode to know if it's worth a listen or if we should move\n00:22 - on to the next one so we've built an automation that summarizes podcast episodes by extracting the podcast audio creating a summary and saving that summary in\n00:33 - Notion and in today's video we're going to give you a step-by-step demonstration on how you can build this automation for yourself let's get started so the first thing we're going\n00:46 - to do is add the Dropbox module and our action is going to be the create a sharable link action we've saved our podcast episode to Dropbox and what we're doing is we're accessing a saved\n00:57 - episode for our scenario by creating a sharable link for our Dumpling AI module later on by the way for our demonstration we're getting our podcast episodes from the BBC's podcasting house\n01:09 - website they've got a lot of episodes on a range of topics and you can download these episodes as well for our link's access level we're going to give it max access\n01:23 - and we're going to allow downloads for our sharable link this part is really important because we'll be using the download URL of the podcast episode we saved in Dropbox in our Dumpling AI\n01:33 - module later on we'll add our Dumpling AI module next and the action we'll be using is the extract data from audio action this is the part in our automation where we'll\n01:44 - be able to extract the content from our podcast episode our input method is going to be URL and our URL is going to be the download URL from Dropbox for our prompt we're going to ask the LLM to\n01:54 - extract any key takeaways or details from the episode depending on what you'll need you can be a lot more descriptive and ask for a lot more the point is we're trying to collect as much\n02:04 - crucial information from our audio file in order for us to create a summary of that episode later on next we're going to add an AI chatbot and for our demonstration uh we're using Anthropics\n02:16 - Claude but you can swap this out with Chatg GPT or any other tool of your choosing for our model we want a summary that's short and sweet so we'll be working with Claude 3\n02:27 - Haiku we're going to set our max tokens to 4,95 for our message we're going to give ourselves the user role for our content our content type is going to be text and\n02:42 - for our text we're going to ask Claude to create a summary for a podcast episode using the extracted results from our Dumpling AI module if you're looking for something more detailed you can\n02:56 - switch your prompt in the Dumpling AI module and change your Claude model according to what you think could give you the result you're looking for the last thing we're going to add is\n03:20 - going to be the notion module and our action is going to be the create a page action we'll be saving our podcast summary in notion you could swap this out with KOD or Google Docs if you'd\n03:30 - prefer we're going to create a page into a parent page and we'll select a parent page we created beforehand you can be a lot more descriptive with the title of the page but for our demonstration uh\n03:40 - we're going for something simple a generic title and the creation date of our page for our content object we're going to make our object type a\n03:59 - paragraph we're going to add a text and our content is going to be our text response from Claude and with that we've added the final piece of our automation and we can begin\n04:11 - creating summaries for our podcast episodes let's test our automation and run our scenario while we're waiting let's recap what our scenario is doing we're\n04:22 - creating a sharable link for our podcast episode from Dropbox we're extracting key points and takeaways from our episode using Dumpling AI we're creating a short summary of our findings with\n04:31 - Claude and we're saving it all in Notion so far so good let's hop on over to Notion and see what we got and just like that we've successfully built a podcast summarizer in Make now\n05:07 - our summary is short but you could make yours way longer by changing your clawed model and asking for a lot more details from Dumpling AI and while this video covered creating a podcast summarizer\n05:19 - you can use this automation for other use cases as well we hope you enjoyed this video thanks for watching and we'll see you next time"
            }
          }
        ],
        "Generate Social Posts + Image Prompts": [
          {
            "json": {
              "index": 0,
              "message": {
                "role": "assistant",
                "content": {
                  "facebook": {
                    "post": "Have you ever felt overwhelmed by the countless podcast episodes out there? 😩 You're not alone! We all want to get the most out of our listening time without spending hours searching for the right content. That's why we created a handy automation that summarizes podcast episodes for you! In our latest video, we walk you through building this tool step-by-step, so you can have quick and easy access to the key takeaways of your favorite podcasts, all saved neatly in Notion. 📚 Ready to simplify your podcast journey? Watch the video and start automating your listening experience today!",
                    "image_prompt": "A visually engaging scene of a person in a cozy setting, using a laptop to watch a tutorial video on podcast automation, with Notion and podcast icons around them, showing a blend of technology and comfort."
                  },
                  "linkedin": {
                    "post": "In today's fast-paced world, staying updated with podcast content can be daunting. Many of us find ourselves overwhelmed with endless episodes and little time to spare. To combat this, we've developed an automation tool that summarizes podcast episodes, extracting valuable insights and saving them directly into Notion. In our latest tutorial, we demonstrate how to build this system step-by-step, allowing you to focus on what really matters: consuming quality content efficiently. Discover how this automation can enhance your productivity and transform your podcast listening experience.",
                    "image_prompt": "A professional setting with a person in business attire demonstrating podcast summarization automation on a laptop, with graphs or data visuals on the screen representing efficiency, alongside logos of Notion and various podcast platforms."
                  },
                  "instagram": {
                    "post": "🎙️✨ Say goodbye to overwhelming podcast episodes! With our new automation, you can get quick summaries delivered straight to your Notion. Ready to streamline your listening? Check out our latest video for step-by-step instructions! 🚀 #PodcastLife #Automation #Notion #AI",
                    "image_prompt": "A cheerful person relaxing with headphones, looking at a smartphone displaying podcast summaries, surrounded by colorful podcast episode visuals, with a Notion logo in the background."
                  }
                },
                "refusal": null,
                "annotations": []
              },
              "logprobs": null,
              "finish_reason": "stop"
            }
          }
        ],
        "Structure Posts & Prompts by Platform": [
          {
            "json": {
              "Facebook": "Have you ever felt overwhelmed by the countless podcast episodes out there? 😩 You're not alone! We all want to get the most out of our listening time without spending hours searching for the right content. That's why we created a handy automation that summarizes podcast episodes for you! In our latest video, we walk you through building this tool step-by-step, so you can have quick and easy access to the key takeaways of your favorite podcasts, all saved neatly in Notion. 📚 Ready to simplify your podcast journey? Watch the video and start automating your listening experience today!",
              "Linkedin": "In today's fast-paced world, staying updated with podcast content can be daunting. Many of us find ourselves overwhelmed with endless episodes and little time to spare. To combat this, we've developed an automation tool that summarizes podcast episodes, extracting valuable insights and saving them directly into Notion. In our latest tutorial, we demonstrate how to build this system step-by-step, allowing you to focus on what really matters: consuming quality content efficiently. Discover how this automation can enhance your productivity and transform your podcast listening experience.",
              "Instagram": "🎙️✨ Say goodbye to overwhelming podcast episodes! With our new automation, you can get quick summaries delivered straight to your Notion. Ready to streamline your listening? Check out our latest video for step-by-step instructions! 🚀 #PodcastLife #Automation #Notion #AI",
              "IG Image Prompt": "A cheerful person relaxing with headphones, looking at a smartphone displaying podcast summaries, surrounded by colorful podcast episode visuals, with a Notion logo in the background.",
              "Facebook Image prompt": "A visually engaging scene of a person in a cozy setting, using a laptop to watch a tutorial video on podcast automation, with Notion and podcast icons around them, showing a blend of technology and comfort.",
              "LinkedIn Image prompt": "A professional setting with a person in business attire demonstrating podcast summarization automation on a laptop, with graphs or data visuals on the screen representing efficiency, alongside logos of Notion and various podcast platforms."
            }
          }
        ]
      },
      "settings": {
        "executionOrder": "v1"
      },
      "versionId": "c02e5325-5f0c-42f4-86fc-5ba8b14e2f6d",
      "connections": {
        "Get YouTube Uploads": {
          "main": [
            [
              {
                "node": "Get YouTube Transcript",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Get YouTube Transcript": {
          "main": [
            [
              {
                "node": "Generate Social Posts + Image Prompts",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Generate Facebook Image": {
          "main": [
            [
              {
                "node": "Save Facebook Caption to Airtable",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Generate Instagram Image": {
          "main": [
            [
              {
                "node": "Save Instagram Caption to Airtable",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Save Facebook Caption to Airtable": {
          "main": [
            [
              {
                "node": "Upload Facebook Image to Airtable",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Save LinkedIn Caption to Airtable": {
          "main": [
            [
              {
                "node": "Upload LinkedIn Image to Airtable",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Save Instagram Caption to Airtable": {
          "main": [
            [
              {
                "node": "Upload Instagram Image to Airtable",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Upload Instagram Image to Airtable": {
          "main": [
            []
          ]
        },
        "Generate LinkedIn Image (Dumpling AI)": {
          "main": [
            [
              {
                "node": "Save LinkedIn Caption to Airtable",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Generate Social Posts + Image Prompts": {
          "main": [
            [
              {
                "node": "Structure Posts & Prompts by Platform",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Structure Posts & Prompts by Platform": {
          "main": [
            [
              {
                "node": "Generate Facebook Image",
                "type": "main",
                "index": 0
              },
              {
                "node": "Generate Instagram Image",
                "type": "main",
                "index": 0
              },
              {
                "node": "Generate LinkedIn Image (Dumpling AI)",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 15,
      "nodeTypes": {
        "n8n-nodes-base.set": {
          "count": 1
        },
        "n8n-nodes-base.airtable": {
          "count": 3
        },
        "n8n-nodes-base.stickyNote": {
          "count": 2
        },
        "n8n-nodes-base.httpRequest": {
          "count": 7
        },
        "@n8n/n8n-nodes-langchain.openAi": {
          "count": 1
        },
        "n8n-nodes-base.rssFeedReadTrigger": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Yang",
      "username": "yang",
      "bio": "",
      "verified": true,
      "links": [
        ""
      ],
      "avatar": "https://gravatar.com/avatar/6c996ff9ed140535b522858466c376f84e755b851b34b0ad900e4e6568568f84?r=pg&d=retro&size=200"
    },
    "nodes": [
      {
        "id": 2,
        "icon": "file:airtable.svg",
        "name": "n8n-nodes-base.airtable",
        "codex": {
          "data": {
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/2021-goals-level-up-your-vocabulary-with-vonage-and-n8n/",
                  "icon": "🎯",
                  "label": "2021 Goals: Level Up Your Vocabulary With Vonage and n8n"
                },
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/",
                  "icon": "🔗",
                  "label": "How to build a low-code, self-hosted URL shortener in 3 steps"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
                  "icon": "📱",
                  "label": "Building an expense tracking app in 10 minutes"
                },
                {
                  "url": "https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/",
                  "icon": "🧠",
                  "label": "Why this Product Manager loves workflow automation with n8n"
                },
                {
                  "url": "https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/",
                  "icon": "🧰",
                  "label": "Learn to Build Powerful API Endpoints Using Webhooks"
                },
                {
                  "url": "https://n8n.io/blog/sending-sms-the-low-code-way-with-airtable-twilio-programmable-sms-and-n8n/",
                  "icon": "📱",
                  "label": "Sending SMS the Low-Code Way with Airtable, Twilio Programmable SMS, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/automating-conference-organization-processes-with-n8n/",
                  "icon": "🙋‍♀️",
                  "label": "Automating Conference Organization Processes with n8n"
                },
                {
                  "url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
                  "icon": "🎖",
                  "label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.airtable/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/airtable/"
                }
              ]
            },
            "categories": [
              "Data & Storage"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Airtable"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMDAgMTcwIj48cGF0aCBmaWxsPSIjZmNiNDAwIiBkPSJNODkgNC44IDE2LjIgMzQuOWMtNC4xIDEuNy00IDcuNC4xIDkuMWw3My4yIDI5YzYuNCAyLjYgMTMuNiAyLjYgMjAgMGw3My4yLTI5YzQuMS0xLjYgNC4xLTcuNC4xLTkuMWwtNzMtMzAuMUMxMDMuMiAyIDk1LjcgMiA4OSA0LjgiLz48cGF0aCBmaWxsPSIjMThiZmZmIiBkPSJNMTA1LjkgODguOXY3Mi41YzAgMy40IDMuNSA1LjggNi43IDQuNWw4MS42LTMxLjdjMS45LS43IDMuMS0yLjUgMy4xLTQuNVY1Ny4yYzAtMy40LTMuNS01LjgtNi43LTQuNUwxMDkgODQuM2MtMS45LjgtMy4xIDIuNi0zLjEgNC42Ii8+PHBhdGggZmlsbD0iI2Y4MmI2MCIgZD0ibTg2LjkgOTIuNi0yNC4yIDExLjctMi41IDEuMkw5LjEgMTMwYy0zLjIgMS42LTcuNC0uOC03LjQtNC40VjU3LjVjMC0xLjMuNy0yLjQgMS42LTMuM3EuNi0uNiAxLjItLjljMS4yLS43IDMtLjkgNC40LS4zbDc3LjUgMzAuN2M0IDEuNSA0LjMgNy4xLjUgOC45Ii8+PHBhdGggZmlsbD0iI2JhMWU0NSIgZD0ibTg2LjkgOTIuNi0yNC4yIDExLjctNTkuNC01MHEuNi0uNiAxLjItLjljMS4yLS43IDMtLjkgNC40LS4zbDc3LjUgMzAuN2M0IDEuNCA0LjMgNyAuNSA4LjgiLz48L3N2Zz4="
        },
        "displayName": "Airtable",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 3,
            "name": "Data & Storage"
          }
        ]
      },
      {
        "id": 19,
        "icon": "file:httprequest.svg",
        "name": "n8n-nodes-base.httpRequest",
        "codex": {
          "data": {
            "alias": [
              "API",
              "Request",
              "URL",
              "Build",
              "cURL"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
                  "icon": "🧬",
                  "label": "Why business process automation with n8n can change your daily life"
                },
                {
                  "url": "https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/",
                  "icon": "📈",
                  "label": "Automatically pulling and visualizing data with n8n"
                },
                {
                  "url": "https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/",
                  "icon": "✍️",
                  "label": "Learn how to automatically cross-post your content with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/",
                  "icon": "🧾",
                  "label": "Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/",
                  "icon": "🛳",
                  "label": "Running n8n on ships: An interview with Maranics"
                },
                {
                  "url": "https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/",
                  "icon": " 🪢",
                  "label": "What are APIs and how to use them with no code"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/world-poetry-day-workflow/",
                  "icon": "📜",
                  "label": "Celebrating World Poetry Day with a daily poem in Telegram"
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/automate-designs-with-bannerbear-and-n8n/",
                  "icon": "🎨",
                  "label": "Automate Designs with Bannerbear and n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
                  "icon": "📱",
                  "label": "Building an expense tracking app in 10 minutes"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-to-use-the-http-request-node-the-swiss-army-knife-for-workflow-automation/",
                  "icon": "🧰",
                  "label": "How to use the HTTP Request Node - The Swiss Army Knife for Workflow Automation"
                },
                {
                  "url": "https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/",
                  "icon": "🦄",
                  "label": "Learn how to use webhooks with Mattermost slash commands"
                },
                {
                  "url": "https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/",
                  "icon": "📈",
                  "label": "How a Membership Development Manager automates his work and investments"
                },
                {
                  "url": "https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/",
                  "icon": "📈",
                  "label": "A low-code bitcoin ticker built with QuestDB and n8n.io"
                },
                {
                  "url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
                  "icon": "🎡",
                  "label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
                },
                {
                  "url": "https://n8n.io/blog/automations-for-activists/",
                  "icon": "✨",
                  "label": "How Common Knowledge use workflow automation for activism"
                },
                {
                  "url": "https://n8n.io/blog/creating-scheduled-text-affirmations-with-n8n/",
                  "icon": "🤟",
                  "label": "Creating scheduled text affirmations with n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/"
                }
              ]
            },
            "categories": [
              "Development",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"output\"]",
        "defaults": {
          "name": "HTTP Request",
          "color": "#0004F5"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MCAyMEM0MCA4Ljk1MzE0IDMxLjA0NjkgMCAyMCAwQzguOTUzMTQgMCAwIDguOTUzMTQgMCAyMEMwIDMxLjA0NjkgOC45NTMxNCA0MCAyMCA0MEMzMS4wNDY5IDQwIDQwIDMxLjA0NjkgNDAgMjBaTTIwIDM2Ljk0NThDMTguODg1MiAzNi45NDU4IDE3LjEzNzggMzUuOTY3IDE1LjQ5OTggMzIuNjk4NUMxNC43OTY0IDMxLjI5MTggMTQuMTk2MSAyOS41NDMxIDEzLjc1MjYgMjcuNjg0N0gyNi4xODk4QzI1LjgwNDUgMjkuNTQwMyAyNS4yMDQ0IDMxLjI5MDEgMjQuNTAwMiAzMi42OTg1QzIyLjg2MjIgMzUuOTY3IDIxLjExNDggMzYuOTQ1OCAyMCAzNi45NDU4Wk0xMi45MDY0IDIwQzEyLjkwNjQgMjEuNjA5NyAxMy4wMDg3IDIzLjE2NCAxMy4yMDAzIDI0LjYzMDVIMjYuNzk5N0MyNi45OTEzIDIzLjE2NCAyNy4wOTM2IDIxLjYwOTcgMjcuMDkzNiAyMEMyNy4wOTM2IDE4LjM5MDMgMjYuOTkxMyAxNi44MzYgMjYuNzk5NyAxNS4zNjk1SDEzLjIwMDNDMTMuMDA4NyAxNi44MzYgMTIuOTA2NCAxOC4zOTAzIDEyLjkwNjQgMjBaTTIwIDMuMDU0MTlDMjEuMTE0OSAzLjA1NDE5IDIyLjg2MjIgNC4wMzA3OCAyNC41MDAxIDcuMzAwMzlDMjUuMjA2NiA4LjcxNDA4IDI1LjgwNzIgMTAuNDA2NyAyNi4xOTIgMTIuMzE1M0gxMy43NTAxQzE0LjE5MzMgMTAuNDA0NyAxNC43OTQyIDguNzEyNTQgMTUuNDk5OCA3LjMwMDY0QzE3LjEzNzcgNC4wMzA4MyAxOC44ODUxIDMuMDU0MTkgMjAgMy4wNTQxOVpNMzAuMTQ3OCAyMEMzMC4xNDc4IDE4LjQwOTkgMzAuMDU0MyAxNi44NjE3IDI5LjgyMjcgMTUuMzY5NUgzNi4zMDQyQzM2LjcyNTIgMTYuODQyIDM2Ljk0NTggMTguMzk2NCAzNi45NDU4IDIwQzM2Ljk0NTggMjEuNjAzNiAzNi43MjUyIDIzLjE1OCAzNi4zMDQyIDI0LjYzMDVIMjkuODIyN0MzMC4wNTQzIDIzLjEzODMgMzAuMTQ3OCAyMS41OTAxIDMwLjE0NzggMjBaTTI2LjI3NjcgNC4yNTUxMkMyNy42MzY1IDYuMzYwMTkgMjguNzExIDkuMTMyIDI5LjM3NzQgMTIuMzE1M0gzNS4xMDQ2QzMzLjI1MTEgOC42NjggMzAuMTA3IDUuNzgzNDYgMjYuMjc2NyA0LjI1NTEyWk0xMC42MjI2IDEyLjMxNTNINC44OTI5M0M2Ljc1MTQ3IDguNjY3ODQgOS44OTM1MSA1Ljc4MzQxIDEzLjcyMzIgNC4yNTUxM0MxMi4zNjM1IDYuMzYwMjEgMTEuMjg5IDkuMTMyMDEgMTAuNjIyNiAxMi4zMTUzWk0zLjA1NDE5IDIwQzMuMDU0MTkgMjEuNjAzIDMuMjc3NDMgMjMuMTU3NSAzLjY5NDg0IDI0LjYzMDVIMTAuMTIxN0M5Ljk0NjE5IDIzLjE0MiA5Ljg1MjIyIDIxLjU5NDMgOS44NTIyMiAyMEM5Ljg1MjIyIDE4LjQwNTcgOS45NDYxOSAxNi44NTggMTAuMTIxNyAxNS4zNjk1SDMuNjk0ODRDMy4yNzc0MyAxNi44NDI1IDMuMDU0MTkgMTguMzk3IDMuMDU0MTkgMjBaTTI2LjI3NjYgMzUuNzQyN0MyNy42MzY1IDMzLjYzOTMgMjguNzExIDMwLjg2OCAyOS4zNzc0IDI3LjY4NDdIMzUuMTA0NkMzMy4yNTEgMzEuMzMyMiAzMC4xMDY4IDM0LjIxNzkgMjYuMjc2NiAzNS43NDI3Wk0xMy43MjM0IDM1Ljc0MjdDOS44OTM2OSAzNC4yMTc5IDYuNzUxNTUgMzEuMzMyNCA0Ljg5MjkzIDI3LjY4NDdIMTAuNjIyNkMxMS4yODkgMzAuODY4IDEyLjM2MzUgMzMuNjM5MyAxMy43MjM0IDM1Ljc0MjdaIiBmaWxsPSIjM0E0MkU5Ii8+Cjwvc3ZnPgo="
        },
        "displayName": "HTTP Request",
        "typeVersion": 4,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 38,
        "icon": "fa:pen",
        "name": "n8n-nodes-base.set",
        "codex": {
          "data": {
            "alias": [
              "Set",
              "JS",
              "JSON",
              "Filter",
              "Transform",
              "Map"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/",
                  "icon": "🏭",
                  "label": "Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"
                },
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/",
                  "icon": "📈",
                  "label": "Automatically pulling and visualizing data with n8n"
                },
                {
                  "url": "https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/",
                  "icon": "📡",
                  "label": "Database Monitoring and Alerting with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/",
                  "icon": "🧾",
                  "label": "Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "url": "https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/",
                  "icon": "🔗",
                  "label": "How to build a low-code, self-hosted URL shortener in 3 steps"
                },
                {
                  "url": "https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/",
                  "icon": "⚙️",
                  "label": "Automate your data processing pipeline in 9 steps"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
                  "icon": "📱",
                  "label": "Building an expense tracking app in 10 minutes"
                },
                {
                  "url": "https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/",
                  "icon": "📹",
                  "label": "The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/",
                  "icon": "🧰",
                  "label": "Learn to Build Powerful API Endpoints Using Webhooks"
                },
                {
                  "url": "https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/",
                  "icon": "📈",
                  "label": "How a Membership Development Manager automates his work and investments"
                },
                {
                  "url": "https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/",
                  "icon": "📈",
                  "label": "A low-code bitcoin ticker built with QuestDB and n8n.io"
                },
                {
                  "url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
                  "icon": "🎡",
                  "label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
                },
                {
                  "url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
                  "icon": "🎖",
                  "label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Data Transformation"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Edit Fields"
        },
        "iconData": {
          "icon": "pen",
          "type": "icon"
        },
        "displayName": "Edit Fields (Set)",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 565,
        "icon": "fa:sticky-note",
        "name": "n8n-nodes-base.stickyNote",
        "codex": {
          "data": {
            "alias": [
              "Comments",
              "Notes",
              "Sticky"
            ],
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Sticky Note",
          "color": "#FFD233"
        },
        "iconData": {
          "icon": "sticky-note",
          "type": "icon"
        },
        "displayName": "Sticky Note",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 1227,
        "icon": "fa:rss",
        "name": "n8n-nodes-base.rssFeedReadTrigger",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.rssfeedreadtrigger/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "RSS Feed Trigger",
          "color": "#b02020"
        },
        "iconData": {
          "icon": "rss",
          "type": "icon"
        },
        "displayName": "RSS Feed Trigger",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 1250,
        "icon": "file:openAi.svg",
        "name": "@n8n/n8n-nodes-langchain.openAi",
        "codex": {
          "data": {
            "alias": [
              "LangChain",
              "ChatGPT",
              "Sora",
              "DallE",
              "whisper",
              "audio",
              "transcribe",
              "tts",
              "assistant"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-langchain.openai/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Agents",
                "Miscellaneous",
                "Root Nodes"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "OpenAI"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg1IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NiAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MSA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K"
        },
        "displayName": "OpenAI",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 31,
        "name": "Content Creation"
      },
      {
        "id": 51,
        "name": "Multimodal AI"
      }
    ],
    "image": []
  }
}