{
  "workflow": {
    "id": 4372,
    "name": "Generate product ad copy & CTAs with GPT-4 for Slack and Airtable",
    "views": 1262,
    "recentViews": 0,
    "totalViews": 1262,
    "createdAt": "2025-05-25T05:42:40.330Z",
    "description": "# ⚡ AI Copywriter Pro: Instant Ad Copy & CTA Generator\n\nTransform product details into compelling marketing copy in seconds. This intelligent n8n workflow takes basic product information and generates professional ad copy with powerful calls-to-action using GPT-4, then distributes the results to your team via Slack or stores them in Airtable for future use.\n\n## 🚀 How It Works\n\nThis streamlined 4-step automation delivers professional marketing copy instantly:\n\n**Step 1: Simple Form Input**\nUsers submit basic product information through a clean web form - just product name and key features required.\n\n**Step 2: AI-Powered Generation**\nThe workflow sends product details to GPT-4 with a specialized copywriting prompt that creates:\n- Compelling 2-sentence ad copy optimized for conversions\n- 3 powerful call-to-action phrases with different urgency levels\n- Professional tone tailored for marketing campaigns\n\n**Step 3: Structured Processing**\nThe AI response is automatically parsed into clean, labeled fields ready for immediate use across marketing channels.\n\n**Step 4: Multi-Channel Distribution**\nGenerated content is simultaneously:\n- Posted to your designated Slack channel for team review\n- Logged in Airtable for campaign tracking and reuse\n\n## ⚙️ Setup Steps\n\n### Prerequisites\n- Active OpenAI API account with GPT-4 access\n- Slack workspace with admin permissions\n- Airtable account for content storage\n- n8n instance (cloud or self-hosted)\n\n### Configuration Steps\n\n**1. Credential Setup**\n- **OpenAI API Key**: Required for GPT-4 content generation\n- **Slack OAuth2**: Needed for posting messages to channels\n- **Airtable Personal Access Token**: Essential for database operations\n\n**2. Form Configuration**\n- The workflow automatically generates a web form at: `your-n8n-instance.com/form/[webhook-id]`\n- Form fields are pre-configured for:\n  - Product Name (text input)\n  - Product Features (textarea for detailed descriptions)\n- Form can be embedded on websites or shared as standalone link\n\n**3. Slack Integration Setup**\n- Connect your Slack workspace to n8n\n- Create or select target channel for ad copy notifications\n- Update the `channelId` parameter with your channel's ID\n- Test connection with sample message\n\n**4. Airtable Database Preparation**\n- Create new base or use existing one\n- Set up table with columns:\n  - Product Name (Single line text)\n  - Product Features (Long text)\n  - Ad Copy (Long text)\n  - CTAs (Long text)\n- Copy base and table IDs from Airtable URLs\n- Update workflow parameters accordingly\n\n**5. AI Prompt Customization**\nThe default prompt generates versatile marketing copy, but you can customize for:\n- Industry-specific terminology\n- Brand voice and tone\n- Target audience demographics\n- Campaign objectives (awareness, conversion, retention)\n\n## 🎯 Use Cases\n\n### **E-commerce & Retail**\n- **Product Launch Campaigns**: Generate copy for new product announcements\n- **Seasonal Promotions**: Create urgency-driven messaging for sales events\n- **Category Pages**: Develop compelling descriptions for product collections\n- **Social Media Ads**: Produce scroll-stopping copy for Facebook and Instagram\n\n### **SaaS & Technology**\n- **Feature Announcements**: Craft clear, benefit-focused messaging\n- **Free Trial Campaigns**: Generate conversion-optimized trial signup copy\n- **Case Study Promotions**: Create compelling success story headlines\n- **Webinar Marketing**: Develop registration-driving event descriptions\n\n### **Agency & Freelance**\n- **Client Presentations**: Rapidly prototype copy concepts for pitches\n- **A/B Testing**: Generate multiple copy variations for campaign testing\n- **Campaign Brainstorming**: Kickstart creative sessions with AI-generated ideas\n- **Content Calendar Filling**: Populate social media schedules efficiently\n\n### **Startup & Small Business**\n- **MVP Marketing**: Create professional copy without hiring agencies\n- **Investor Pitches**: Generate compelling product descriptions\n- **Website Content**: Populate landing pages with conversion-focused copy\n- **Email Campaigns**: Develop subject lines and promotional content\n\n### **Content Marketing**\n- **Blog Post Promotions**: Generate social media copy for article shares\n- **Newsletter CTAs**: Create compelling subscription and engagement prompts\n- **Video Descriptions**: Develop YouTube and social video copy\n- **Podcast Promotions**: Generate episode descriptions and listener CTAs\n\n## 🔧 Advanced Customization Options\n\n### **Multi-Tone Generation**\nModify the prompt to generate different copy styles:\n```\n- Professional & Corporate: \"Generate formal, trust-building copy...\"\n- Casual & Friendly: \"Create conversational, approachable messaging...\"\n- Urgent & Scarcity: \"Develop time-sensitive, action-driving copy...\"\n- Luxury & Premium: \"Craft sophisticated, high-end positioning...\"\n```\n\n### **Batch Processing Enhancement**\nAdd nodes for processing multiple products:\n- **Split in Batches**: Handle bulk product lists\n- **Merge**: Combine results for team review\n- **Item Lists**: Process CSV uploads of product catalogs\n\n### **Quality Control Integration**\nImplement approval workflows:\n- **Human Review Step**: Add manual approval before publishing\n- **Sentiment Analysis**: Score copy for emotional impact\n- **Brand Guidelines Check**: Validate against company voice standards\n- **A/B Test Setup**: Generate multiple variations automatically\n\n### **Extended Distribution**\nConnect additional platforms:\n- **Email Marketing**: Send to Mailchimp, ConvertKit, or HubSpot\n- **Social Media**: Post directly to Facebook, Twitter, LinkedIn\n- **CMS Integration**: Push to WordPress, Webflow, or custom sites\n- **Project Management**: Create tasks in Asana, Trello, or Monday.com\n\n## 📊 Output Examples\n\n### **Sample Input:**\n```\nProduct Name: EcoSmart Water Bottle\nProduct Features: Self-cleaning UV technology, 24-hour temperature retention, BPA-free stainless steel, leak-proof design, 500ml capacity\n```\n\n### **Generated Ad Copy:**\n```\nStay hydrated and eco-conscious with the EcoSmart Water Bottle—featuring revolutionary self-cleaning UV technology that eliminates 99.9% of bacteria while keeping your drinks perfectly chilled for 24 hours! Experience the future of hydration with premium stainless steel construction that's as durable as it is sustainable.\n\nCTAs:\n• Order Your EcoSmart Bottle Today\n• Join the Clean Hydration Revolution  \n• Get 24-Hour Freshness Now\n```\n\n### **Slack Notification Format:**\n```\n🎯 NEW AD COPY GENERATED\n\nProduct: EcoSmart Water Bottle\n\n📝 Ad Copy:\nStay hydrated and eco-conscious with the EcoSmart Water Bottle—featuring revolutionary self-cleaning UV technology that eliminates 99.9% of bacteria while keeping your drinks perfectly chilled for 24 hours! Experience the future of hydration with premium stainless steel construction that's as durable as it is sustainable.\n\n🔥 Call-to-Actions:\n• Order Your EcoSmart Bottle Today\n• Join the Clean Hydration Revolution  \n• Get 24-Hour Freshness Now\n\nReady to use in campaigns! 🚀\n```\n\n## 🛠️ Troubleshooting & Best Practices\n\n### **Common Issues & Solutions**\n\n**API Rate Limits**\n- Monitor OpenAI usage dashboard\n- Implement delay nodes for high-volume processing\n- Consider upgrading to higher tier plans\n\n**Inconsistent Output Quality**\n- Refine prompts with specific examples\n- Add output validation rules\n- Include brand guidelines in system prompt\n\n**Integration Failures**\n- Verify all API credentials are current\n- Test connections individually before full workflow\n- Check service status pages for outages\n\n### **Optimization Strategies**\n\n**Cost Management**\n- Use GPT-4o-mini for routine copy generation\n- Reserve GPT-4 for premium campaigns\n- Cache common responses to reduce API calls\n\n**Quality Enhancement**\n- A/B test different prompt variations\n- Collect team feedback on generated copy\n- Maintain library of high-performing examples\n\n**Workflow Efficiency**\n- Set up monitoring alerts for failures\n- Create backup workflows for critical campaigns\n- Document customizations for team reference\n\n## 📈 Performance Tracking\n\n### **Key Metrics to Monitor**\n- **Generation Speed**: Average time from input to output\n- **Approval Rate**: Percentage of AI copy used without edits\n- **Campaign Performance**: Click-through rates of AI-generated content\n- **Cost Per Copy**: API costs per generated piece\n\n### **Success Indicators**\n- Reduced copywriting turnaround time (target: under 30 seconds)\n- Increased campaign launch frequency\n- Higher team satisfaction with copy quality\n- Measurable improvement in conversion rates\n\n## 📞 Questions & Support\n\nNeed help setting up or customizing your AI Copywriter Pro workflow?\n\n**📧 Direct Support**\n- **Email**: Yaron@nofluff.online\n- **Response Time**: Within 24 hours on business days\n- **Specialties**: Custom prompt engineering, integration troubleshooting, workflow optimization\n\n**🎥 Video Tutorials**\n- **YouTube Channel**: [https://www.youtube.com/@YaronBeen/videos](https://www.youtube.com/@YaronBeen/videos)\n  - Complete setup walkthrough\n  - Advanced customization techniques\n  - Integration with popular marketing tools\n  - Prompt engineering masterclass\n\n**🤝 Professional Network**\n- **LinkedIn**: [https://www.linkedin.com/in/yaronbeen/](https://www.linkedin.com/in/yaronbeen/)\n  - Connect for ongoing automation support\n  - Share your copywriting success stories\n  - Get early access to new workflow templates\n\n**💬 What to Include in Support Requests**\n- Your specific industry or use case\n- Current marketing tools and platforms\n- Sample products you want to test with\n- Any custom requirements or brand guidelines\n- Screenshots of any errors or unexpected outputs\n\n---\n\n*Ready to revolutionize your copywriting process? Deploy this workflow and watch your marketing team's productivity soar while maintaining professional, conversion-focused messaging!*",
    "workflow": {
      "meta": {
        "instanceId": "5aaf4236c70e34e423fbdb2c7b754d19253a933bb1476d548f75848a01e473cf",
        "templateCredsSetupCompleted": true
      },
      "nodes": [
        {
          "id": "a8a6738c-9269-427d-821c-9793db821d88",
          "name": "Generate Ad Copy and CTAs",
          "type": "@n8n/n8n-nodes-langchain.agent",
          "position": [
            1180,
            3040
          ],
          "parameters": {
            "text": "=Generate a catchy 2-sentence ad copy and 3 strong CTAs for the following product.\n\nProduct Name: {{ $json['Product Name'] }}\nFeatures: {{ $json['Product Features'] }}",
            "options": {},
            "promptType": "define",
            "hasOutputParser": true
          },
          "typeVersion": 1.9
        },
        {
          "id": "bc9d40c0-758a-490b-9c29-67c901c681c7",
          "name": "OpenAI Chat Model",
          "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
          "position": [
            1120,
            3260
          ],
          "parameters": {
            "model": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-4o-mini"
            },
            "options": {}
          },
          "typeVersion": 1.2
        },
        {
          "id": "0b3e78c5-a59f-4eaa-8f10-c5110b64d6e6",
          "name": "Slack",
          "type": "n8n-nodes-base.slack",
          "position": [
            1760,
            2940
          ],
          "webhookId": "becca932-88e0-45d2-a72a-3ce2c7cb4f2b",
          "parameters": {
            "text": "=Ad copy: \n{{ $json.output.ad_copy }}\n\nCTAs: \n{{ $json.output.ctas }}",
            "select": "channel",
            "channelId": {
              "__rl": true,
              "mode": "list",
              "value": "C08TTV0CC3E",
              "cachedResultName": "all-nathing"
            },
            "otherOptions": {
              "includeLinkToWorkflow": false
            }
          },
          "typeVersion": 2.3
        },
        {
          "id": "28bc17c8-1d47-4769-bd2b-38eadf33ad5f",
          "name": "Structured Output Parser",
          "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
          "position": [
            1360,
            3260
          ],
          "parameters": {
            "jsonSchemaExample": "{\n  \"ad_copy\": \"Stay refreshed and eco-friendly with the EcoSmart Bottle—your self-cleaning hydration companion that keeps drinks ice-cold for a full 24 hours! Join the movement towards a healthier planet with every sip!\",\n  \"ctas\":\n    \"Get Yours Now and Sip Sustainability!\"\n}"
          },
          "typeVersion": 1.2
        },
        {
          "id": "9ee0cf4b-fa21-46bb-b64f-834da2762fdb",
          "name": "Airtable",
          "type": "n8n-nodes-base.airtable",
          "position": [
            1760,
            3240
          ],
          "parameters": {
            "base": {
              "__rl": true,
              "mode": "list",
              "value": "appjaqV0O7FkXT2qj",
              "cachedResultUrl": "https://airtable.com/appjaqV0O7FkXT2qj",
              "cachedResultName": "Table no.1"
            },
            "table": {
              "__rl": true,
              "mode": "list",
              "value": "tblTAvRqVFOo5AVDF",
              "cachedResultUrl": "https://airtable.com/appjaqV0O7FkXT2qj/tblTAvRqVFOo5AVDF",
              "cachedResultName": "Table 1"
            },
            "columns": {
              "value": {
                "CATs": "={{ $json.output.ctas }}",
                "Ad copy": "={{ $json.output.ad_copy }}",
                "Product Name": "={{ $('Product Info Input').item.json['Product Name'] }}",
                "Product Features": "={{ $('Product Info Input').item.json['Product Features'] }}"
              },
              "schema": [
                {
                  "id": "id",
                  "type": "string",
                  "display": true,
                  "removed": true,
                  "readOnly": true,
                  "required": false,
                  "displayName": "id",
                  "defaultMatch": true
                },
                {
                  "id": "Product Name",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Product Name",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Product Features",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Product Features",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Ad copy",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "Ad copy",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "CATs",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "readOnly": false,
                  "required": false,
                  "displayName": "CATs",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "update"
          },
          "typeVersion": 2.1
        },
        {
          "id": "2c548ce7-c10b-47dd-b07d-4f2cc8f48881",
          "name": "Product Info Input",
          "type": "n8n-nodes-base.formTrigger",
          "position": [
            960,
            3040
          ],
          "webhookId": "70c94b37-904c-4e87-bca8-808cff7840de",
          "parameters": {
            "options": {},
            "formTitle": "Product Info",
            "formFields": {
              "values": [
                {
                  "fieldLabel": "Product Name"
                },
                {
                  "fieldLabel": "Product Features"
                }
              ]
            }
          },
          "typeVersion": 2.2
        },
        {
          "id": "3fb03bf6-7a54-4aad-afe5-4d4ebee70cda",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -740,
            3280
          ],
          "parameters": {
            "color": 4,
            "width": 1289,
            "height": 2078,
            "content": "## ✍️ AI Copywriter Agent – From Product Info to Ad Copy + CTAs\n\nInstantly generate ad copy and calls-to-action using GPT based on product details. Ideal for:\n✅ Marketers — generate engaging ad content in seconds\n✅ Founders — test multiple copy angles fast\n✅ Designers — fill mockups with real copy\n\n---\n\n### ⚙️ What's Used\n\n**n8n Nodes:**\nForm Submission → OpenAI (GPT via Tools Agent) → Slack OR Airtable\n\n**External Tools:**\n\n* OpenAI (Chat Model)\n* Slack (Send Message)\n* Airtable (Create Record)\n\n---\n\n### 🔑 Setup – Credentials Needed\n\n* **OpenAI API Key** → Add under OpenAI node credentials\n* **Slack OAuth** → Connect Slack workspace in n8n\n* **Airtable Token** → Add Airtable API key and base/table info\n\n---\n\n### 🚀 Workflow Steps\n\n1. **User submits product info** via form\n2. **GPT generates content** using a custom prompt\n\n   * Output: 2-sentence ad copy + 3 call-to-actions\n3. **Structured parser** extracts clean fields\n4. **Send output to Slack** or **log in Airtable**\n\n   * Choose one or both for distribution/storage\n\n---\n\n### 📤 Slack Output Format\n\n```\n*Ad Copy for EcoSmart Bottle*  \nStay refreshed with the EcoSmart Bottle—self-cleaning tech and 24-hour cold retention keep your drink perfect anytime.\n\n*CTAs:*  \n- Buy Now  \n- Stay Cool All Day  \n- Get Yours Today\n```\n\n---\n\n### 💡 Pro Tips\n\n* Use GPT prompt variations to test different tones (funny, urgent, luxury)\n* Add \"Batch Mode\" with `SplitInBatches` node to process multiple products at once\n* Route output to Slack first for **team review**, then log approved copies in Airtable\n* Use outputs for:\n\n  * Landing pages\n  * Ads (Meta, Google, etc.)\n  * Product cards and banners\n\n---\n\n### 🛠️ Customize It\n\n* Add scoring logic for ad variants\n* Connect to Trello, Notion, or your CMS\n* Store prompt + outputs for future reference\n\n---\n\nThis workflow gives your marketing team a **real-time copy assistant**—just submit a product and watch the ad copy write itself. No writer's block. No delay. Pure automation magic.\n"
          },
          "typeVersion": 1
        },
        {
          "id": "938469cb-f289-4796-9e36-cb7a393edc23",
          "name": "Sticky Note9",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -740,
            2940
          ],
          "parameters": {
            "color": 4,
            "width": 1300,
            "height": 320,
            "content": "=======================================\n            WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n    Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n   - YouTube: https://www.youtube.com/@YaronBeen/videos\n   - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"
          },
          "typeVersion": 1
        },
        {
          "id": "ce22eac5-dc26-41ec-bc63-2dbc648335aa",
          "name": "Sticky Note1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            900,
            2540
          ],
          "parameters": {
            "width": 620,
            "height": 880,
            "content": "## 🧠 Step 1: Generate Ad Copy & CTAs with AI\n\nThis section transforms raw product info into compelling marketing content using GPT-powered intelligence.\n\n### 🤖 **AI-Powered Copywriting Agent**\n\nThe **Tools Agent** receives structured product input and uses a connected chat model to generate a punchy two-line ad and three strong calls-to-action. Perfect for landing pages, ads, or product cards.\n\n### 🔗 **Generate with OpenAI Chat Model + Structured Output Parser**\n\nThe generation is handled by the **OpenAI Chat Model**, guided by a custom prompt tailored to highlight the product’s name and features.\nThe **Structured Output Parser** ensures the response is clean, labeled, and ready for downstream use (Slack, Airtable, etc.).\n\n> 📌 This step removes the guesswork from copywriting — one form input delivers high-converting messaging at scale.\n"
          },
          "typeVersion": 1
        },
        {
          "id": "c8efbf29-0a40-4096-9db8-92ce16ded9c0",
          "name": "Sticky Note2",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            1560,
            2020
          ],
          "parameters": {
            "color": 6,
            "width": 620,
            "height": 1400,
            "content": "## 📤 Step 2: Share & Store Results\n\nThis step delivers the AI-generated content where it's needed—either to your team on Slack or into your structured Airtable database.\n\n### 📨 **Option A: Notify via Slack**\n\nThe **Slack Node** posts the generated ad copy and CTAs directly to a designated Slack channel. This gives your marketing team immediate access to fresh, AI-crafted content.\n\n**Message Format:**\n\n```\n*Ad Copy for {{ $json[\"product_name\"] }}*  \n{{ $json[\"ad_copy\"] }}\n\n*CTAs:*  \n- {{ $json[\"cta1\"] }}  \n- {{ $json[\"cta2\"] }}  \n- {{ $json[\"cta3\"] }}\n```\n\n> 💬 Ideal for fast-paced teams needing instant feedback and collaboration.\n\n### 📊 **Option B: Log to Airtable**\n\nThe **Airtable Node** creates a new record for each product, storing the name, features, ad copy, and CTAs. This builds a searchable history of AI-generated marketing content.\n\n**Logged Fields:**\n\n* Product Name\n* Features\n* Ad Copy\n* CTA 1\n* CTA 2\n* CTA 3\n\n> 📌 Great for long-term tracking, performance analysis, or sharing across systems.\n\nLet me know if you'd like to add approval steps, testing variations, or metrics tracking!\n"
          },
          "typeVersion": 1
        }
      ],
      "pinData": {},
      "connections": {
        "OpenAI Chat Model": {
          "ai_languageModel": [
            [
              {
                "node": "Generate Ad Copy and CTAs",
                "type": "ai_languageModel",
                "index": 0
              }
            ]
          ]
        },
        "Product Info Input": {
          "main": [
            [
              {
                "node": "Generate Ad Copy and CTAs",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Structured Output Parser": {
          "ai_outputParser": [
            [
              {
                "node": "Generate Ad Copy and CTAs",
                "type": "ai_outputParser",
                "index": 0
              }
            ]
          ]
        },
        "Generate Ad Copy and CTAs": {
          "main": [
            [
              {
                "node": "Airtable",
                "type": "main",
                "index": 0
              },
              {
                "node": "Slack",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 10,
      "nodeTypes": {
        "n8n-nodes-base.slack": {
          "count": 1
        },
        "n8n-nodes-base.airtable": {
          "count": 1
        },
        "n8n-nodes-base.stickyNote": {
          "count": 4
        },
        "n8n-nodes-base.formTrigger": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.agent": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.lmChatOpenAi": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.outputParserStructured": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Yaron Been",
      "username": "yaron-nofluff",
      "bio": "Building AI Agents and Automations | Growth Marketer | Entrepreneur | Book Author & Podcast Host\n\nIf you need any help with Automations, feel free to reach out via linkedin:\nhttps://www.linkedin.com/in/yaronbeen/\n\nAnd check out my Youtube channel:\nhttps://www.youtube.com/@YaronBeen/videos",
      "verified": true,
      "links": [
        "https://www.nofluff.online/automation-services/"
      ],
      "avatar": "https://gravatar.com/avatar/a4e4dcaa1f76ff5266bbf80e8df86d22efda890474c68f7796e72fd82e3f2375?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": 40,
        "icon": "file:slack.svg",
        "name": "n8n-nodes-base.slack",
        "codex": {
          "data": {
            "alias": [
              "human",
              "form",
              "wait",
              "hitl",
              "approval"
            ],
            "resources": {
              "generic": [
                {
                  "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/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/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
                  "icon": "👦",
                  "label": "Build your own virtual assistant with n8n: A step by step guide"
                },
                {
                  "url": "https://n8n.io/blog/how-to-automatically-give-kudos-to-contributors-with-github-slack-and-n8n/",
                  "icon": "👏",
                  "label": "How to automatically give kudos to contributors with GitHub, Slack, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/automations-for-activists/",
                  "icon": "✨",
                  "label": "How Common Knowledge use workflow automation for activism"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.slack/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/slack/"
                }
              ]
            },
            "categories": [
              "Communication",
              "HITL"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "HITL": [
                "Human in the Loop"
              ]
            }
          }
        },
        "group": "[\"output\"]",
        "defaults": {
          "name": "Slack"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMTUwLjg1MiAxNTAuODUyIj48dXNlIHhsaW5rOmhyZWY9IiNhIiB4PSIuOTI2IiB5PSIuOTI2Ii8+PHN5bWJvbCBpZD0iYSIgb3ZlcmZsb3c9InZpc2libGUiPjxnIHN0cm9rZS13aWR0aD0iMS44NTIiPjxwYXRoIGZpbGw9IiNlMDFlNWEiIHN0cm9rZT0iI2UwMWU1YSIgZD0iTTQwLjc0MSA5My41NWMwLTguNzM1IDYuNjA3LTE1Ljc3MiAxNC44MTUtMTUuNzcyczE0LjgxNSA3LjAzNyAxNC44MTUgMTUuNzcydjM4LjgyNGMwIDguNzM3LTYuNjA3IDE1Ljc3NC0xNC44MTUgMTUuNzc0cy0xNC44MTUtNy4wMzctMTQuODE1LTE1Ljc3MnoiLz48cGF0aCBmaWxsPSIjZWNiMjJkIiBzdHJva2U9IiNlY2IyMmQiIGQ9Ik05My41NSAxMDcuNDA4Yy04LjczNSAwLTE1Ljc3Mi02LjYwNy0xNS43NzItMTQuODE1czcuMDM3LTE0LjgxNSAxNS43NzItMTQuODE1aDM4LjgyNmM4LjczNSAwIDE1Ljc3MiA2LjYwNyAxNS43NzIgMTQuODE1cy03LjAzNyAxNC44MTUtMTUuNzcyIDE0LjgxNXoiLz48cGF0aCBmaWxsPSIjMmZiNjdjIiBzdHJva2U9IiMyZmI2N2MiIGQ9Ik03Ny43NzggMTUuNzcyQzc3Ljc3OCA3LjAzNyA4NC4zODUgMCA5Mi41OTMgMHMxNC44MTUgNy4wMzcgMTQuODE1IDE1Ljc3MnYzOC44MjZjMCA4LjczNS02LjYwNyAxNS43NzItMTQuODE1IDE1Ljc3MnMtMTQuODE1LTcuMDM3LTE0LjgxNS0xNS43NzJ6Ii8+PHBhdGggZmlsbD0iIzM2YzVmMSIgc3Ryb2tlPSIjMzZjNWYxIiBkPSJNMTUuNzcyIDcwLjM3MUM3LjAzNyA3MC4zNzEgMCA2My43NjMgMCA1NS41NTZzNy4wMzctMTQuODE1IDE1Ljc3Mi0xNC44MTVoMzguODI2YzguNzM1IDAgMTUuNzcyIDYuNjA3IDE1Ljc3MiAxNC44MTVzLTcuMDM3IDE0LjgxNS0xNS43NzIgMTQuODE1eiIvPjxnIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiPjxwYXRoIGZpbGw9IiNlY2IyMmQiIHN0cm9rZT0iI2VjYjIyZCIgZD0iTTc3Ljc3OCAxMzMuMzMzYzAgOC4yMDggNi42MDcgMTQuODE1IDE0LjgxNSAxNC44MTVzMTQuODE1LTYuNjA3IDE0LjgxNS0xNC44MTUtNi42MDctMTQuODE1LTE0LjgxNS0xNC44MTVINzcuNzc4eiIvPjxwYXRoIGZpbGw9IiMyZmI2N2MiIHN0cm9rZT0iIzJmYjY3YyIgZD0iTTEzMy4zMzQgNzAuMzcxaC0xNC44MTVWNTUuNTU2YzAtOC4yMDcgNi42MDctMTQuODE1IDE0LjgxNS0xNC44MTVzMTQuODE1IDYuNjA3IDE0LjgxNSAxNC44MTUtNi42MDcgMTQuODE1LTE0LjgxNSAxNC44MTV6Ii8+PHBhdGggZmlsbD0iI2UwMWU1YSIgc3Ryb2tlPSIjZTAxZTVhIiBkPSJNMTQuODE1IDc3Ljc3OEgyOS42M3YxNC44MTVjMCA4LjIwNy02LjYwNyAxNC44MTUtMTQuODE1IDE0LjgxNVMwIDEwMC44IDAgOTIuNTkzczYuNjA3LTE0LjgxNSAxNC44MTUtMTQuODE1eiIvPjxwYXRoIGZpbGw9IiMzNmM1ZjEiIHN0cm9rZT0iIzM2YzVmMSIgZD0iTTcwLjM3MSAxNC44MTVWMjkuNjNINTUuNTU2Yy04LjIwNyAwLTE0LjgxNS02LjYwNy0xNC44MTUtMTQuODE1UzQ3LjM0OCAwIDU1LjU1NiAwczE0LjgxNSA2LjYwNyAxNC44MTUgMTQuODE1eiIvPjwvZz48L2c+PC9zeW1ib2w+PC9zdmc+"
        },
        "displayName": "Slack",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 28,
            "name": "HITL"
          }
        ]
      },
      {
        "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": 1119,
        "icon": "fa:robot",
        "name": "@n8n/n8n-nodes-langchain.agent",
        "codex": {
          "data": {
            "alias": [
              "LangChain",
              "Chat",
              "Conversational",
              "Plan and Execute",
              "ReAct",
              "Tools"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Agents",
                "Root Nodes"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "AI Agent",
          "color": "#404040"
        },
        "iconData": {
          "icon": "robot",
          "type": "icon"
        },
        "displayName": "AI Agent",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1153,
        "icon": "file:openAiLight.svg",
        "name": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Language Models",
                "Root Nodes"
              ],
              "Language Models": [
                "Chat Models (Recommended)"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "OpenAI Chat Model"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="
        },
        "displayName": "OpenAI Chat Model",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1179,
        "icon": "fa:code",
        "name": "@n8n/n8n-nodes-langchain.outputParserStructured",
        "codex": {
          "data": {
            "alias": [
              "json",
              "zod"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserstructured/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Output Parsers"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Structured Output Parser"
        },
        "iconData": {
          "icon": "code",
          "type": "icon"
        },
        "displayName": "Structured Output Parser",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1225,
        "icon": "file:form.svg",
        "name": "n8n-nodes-base.formTrigger",
        "codex": {
          "data": {
            "alias": [
              "table",
              "submit",
              "post"
            ],
            "resources": {
              "generic": [],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.formtrigger/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Other Trigger Nodes"
              ]
            }
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "On form submission"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NiIgaGVpZ2h0PSI0MCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iIzAwQjdCQyIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzQuOTc4IDM3LjczMmExLjU2IDEuNTYgMCAwIDEtMS41NjIgMS41NjNINi4yNmExLjU2IDEuNTYgMCAwIDEtMS41NjMtMS41NjNWOS42MDdjMC0uNDA1LjE1Ny0uNzk0LjQzOC0xLjA4Nmw2LjMwNC02LjUzMXY1LjM0NEg4LjIxM2ExLjE3MiAxLjE3MiAwIDEgMCAwIDIuMzQzaDQuNDNhMS4xNyAxLjE3IDAgMCAwIDEuMTcxLTEuMTcxVi4yMzJoMTkuNjAyYTEuNTYgMS41NiAwIDAgMSAxLjU2MiAxLjU2M3YxMC4zMjdsLTIuODYgMi44Ni04LjI1MiA4LjI3NmE0MTMuMDA2IDQxMy4wMDYgMCAwIDEtMS42NTQgMS42NjJsLS4zMzcuMzM3YTIgMiAwIDAgMC0uNTU3IDEuMDhMMjAuMyAzMS45MjJjLS4xMDguNjM4LS4yMTUgMS4wNzkuMjExIDEuNDE4LjQwMy4zMi45LjE3NCAxLjU0LjA2Nmw1LjQwOC0uOTI4YTIgMiAwIDAgMCAxLjA4LS41NTZsNi40NC02LjQyOXptLTI0LjAzLTIxLjI2NWExLjE4IDEuMTggMCAwIDAgMS4xNzEgMS4xNzJoMTMuMTYzYTEuMTcyIDEuMTcyIDAgMSAwIDAtMi4zNDRIMTIuMTE5YTEuMTcgMS4xNyAwIDAgMC0xLjE3MiAxLjE3Mm03LjI5NCAxNC43NjZhMS4xNyAxLjE3IDAgMCAwLTEuMTcyLTEuMTcySDEyLjEyYTEuMTcyIDEuMTcyIDAgMSAwIDAgMi4zNDNoNC45NTFhMS4xNyAxLjE3IDAgMCAwIDEuMTcyLTEuMTcybS44Ni03LjM5MWExLjE3IDEuMTcgMCAwIDAtMS4xNzItMS4xNzJoLTUuODExYTEuMTcyIDEuMTcyIDAgMSAwIDAgMi4zNDNoNS44MWExLjE2NCAxLjE2NCAwIDAgMCAxLjE3My0xLjE3MSIgY2xpcC1ydWxlPSJldmVub2RkIi8+PHBhdGggZmlsbD0iIzAwQjdCQyIgZD0ibTMzLjUzMiAxNi4zOTcgNC4yODktNC4yODkgMy43NTggMy43MSAxLjYxNy0xLjYxNiAyLjI1OCAyLjI1N2MuMjE4LjIxOC4zNC41MTMuMzQzLjgyLS4wMDIuMzExLS4xMjUuNjA4LS4zNDQuODNsLTYuODA0IDYuNzk2YTEuMTMgMS4xMyAwIDAgMS0uODI4LjM0MyAxLjE1IDEuMTUgMCAwIDEtLjgyOC0uMzQzIDEuMTggMS4xOCAwIDAgMSAwLTEuNjU3bDUuOTc2LTUuOTY4LTEuMzEyLTEuMzEzLTEuMzgzIDEuNDE0LTEzLjE0OSAxMy4xMjUtNC42MTcuNzgyLjc4Mi00LjYxNy4zMzYtLjMzNyAyLjU2MiAyLjU1NWExLjEgMS4xIDAgMCAwIC44MjguMzQ0Yy4zMTIuMDA1LjYxMi0uMTIuODI4LS4zNDRhMS4xOCAxLjE4IDAgMCAwIDAtMS42NTZsLTIuNTYyLTIuNTYyek00NC43MzYgMTIuMjRjMCAuNDE0LS4xNjMuODEtLjQ1NCAxLjEwMmwtLjkyMi45MTQtMy44NTItMy44MjguOTMtLjkzYTEuNTYzIDEuNTYzIDAgMCAxIDIuMjAzIDBsMS42NCAxLjY0MWMuMjkxLjI5My40NTUuNjkuNDU1IDEuMTAyIi8+PC9zdmc+"
        },
        "displayName": "n8n Form Trigger",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 31,
        "name": "Content Creation"
      },
      {
        "id": 51,
        "name": "Multimodal AI"
      }
    ],
    "image": []
  }
}