AutomationFlowsAI & RAG › Idea to IG Carousel with OpenAI & Weaviate

Idea to IG Carousel with OpenAI & Weaviate

Original n8n title: Idea to Ig Carousel

Idea to IG Carousel. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsOpenAi, vectorStoreWeaviate. Webhook trigger; 12 nodes.

Webhook trigger★★★☆☆ complexityAI-powered12 nodesText Splitter Character Text SplitterOpenAI EmbeddingsWeaviate Vector StoreTool Vector StoreMemory Buffer WindowAnthropic ChatAgentGoogle Sheets
AI & RAG Trigger: Webhook Nodes: 12 Complexity: ★★★☆☆ AI nodes: yes Added:

This workflow follows the Agent → OpenAI Embeddings recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "Idea to IG Carousel",
  "nodes": [
    {
      "parameters": {
        "content": "Automated workflow: Idea to IG Carousel",
        "height": 530,
        "width": 1100,
        "color": 5
      },
      "id": "54134b2f-ee07-4ee3-8934-091e0cc39c6d",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -480,
        -240
      ]
    },
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "idea-to-ig-carousel"
      },
      "id": "0557fff1-0a8e-4013-b7ec-ac586a69ab59",
      "name": "Webhook Trigger",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 1,
      "position": [
        -300,
        0
      ]
    },
    {
      "parameters": {
        "chunkSize": 400,
        "chunkOverlap": 40
      },
      "id": "dd6a352a-89f3-4456-b938-f407c2702e16",
      "name": "Text Splitter",
      "type": "@n8n/n8n-nodes-langchain.textSplitterCharacterTextSplitter",
      "typeVersion": 1,
      "position": [
        -130,
        0
      ]
    },
    {
      "parameters": {
        "model": "text-embedding-3-small",
        "options": {}
      },
      "id": "b20d9054-64c5-4e92-9e49-5c7f5808590a",
      "name": "Embeddings",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "typeVersion": 1,
      "position": [
        70,
        0
      ],
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "mode": "insert",
        "options": {},
        "indexName": "idea_to_ig_carousel"
      },
      "id": "1a52a5a3-2ce3-406f-9ad1-98b30266be23",
      "name": "Weaviate Insert",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreWeaviate",
      "typeVersion": 1,
      "position": [
        270,
        0
      ],
      "credentials": {
        "weaviateApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "indexName": "idea_to_ig_carousel"
      },
      "id": "72a71b2d-bb5d-4545-9482-a524dda1e1b0",
      "name": "Weaviate Query",
      "type": "@n8n/n8n-nodes-langchain.vectorStoreWeaviate",
      "typeVersion": 1,
      "position": [
        270,
        -180
      ],
      "credentials": {
        "weaviateApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "name": "Weaviate",
        "description": "Vector context"
      },
      "id": "64a8d0c4-6d19-4726-a74c-7220105d0ce9",
      "name": "Vector Tool",
      "type": "@n8n/n8n-nodes-langchain.toolVectorStore",
      "typeVersion": 1,
      "position": [
        450,
        -180
      ]
    },
    {
      "parameters": {},
      "id": "fb391d71-831a-4785-a6f8-fcb394893cd3",
      "name": "Window Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "typeVersion": 1.3,
      "position": [
        450,
        -40
      ]
    },
    {
      "parameters": {
        "options": {}
      },
      "id": "a37dc046-d17e-44b1-b0af-3d40f8a7cd3a",
      "name": "Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
      "typeVersion": 1,
      "position": [
        450,
        -340
      ],
      "credentials": {
        "anthropicApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "promptType": "define",
        "text": "Process the following data for task 'Idea to IG Carousel':\n\n{{ $json }}",
        "options": {
          "systemMessage": "You are an assistant for Idea to IG Carousel"
        }
      },
      "id": "20b5f76e-141a-412b-9b8d-9d2e2ec88641",
      "name": "RAG Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "typeVersion": 1,
      "position": [
        720,
        -40
      ]
    },
    {
      "parameters": {
        "operation": "append",
        "documentId": {
          "__rl": true,
          "value": "SHEET_ID",
          "mode": "list",
          "cachedResultName": "Idea to IG Carousel"
        },
        "sheetName": {
          "__rl": true,
          "value": "Log",
          "mode": "list",
          "cachedResultName": "Log"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "Status": "={{$json[\"RAG Agent\"].text}}"
          },
          "schema": []
        }
      },
      "id": "f4779a50-0a27-4916-889c-b4164139db72",
      "name": "Append Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4,
      "position": [
        930,
        -40
      ],
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "channel": "#alerts",
        "text": "Idea to IG Carousel error: {$json.error.message}"
      },
      "id": "5d1c9252-8f74-40d5-aae1-b1ad869d16d1",
      "name": "Slack Alert",
      "type": "n8n-nodes-base.slack",
      "typeVersion": 1,
      "position": [
        930,
        120
      ],
      "credentials": {
        "slackApi": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "Webhook Trigger": {
      "main": [
        [
          {
            "node": "Text Splitter",
            "type": "main",
            "index": 0
          },
          {
            "node": "Window Memory",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Text Splitter": {
      "main": [
        [
          {
            "node": "Embeddings",
            "type": "main",
            "index": 0
          }
        ]
      ],
      "ai_textSplitter": [
        [
          {
            "node": "Weaviate Insert",
            "type": "ai_textSplitter",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings": {
      "ai_embedding": [
        [
          {
            "node": "Weaviate Insert",
            "type": "ai_embedding",
            "index": 0
          },
          {
            "node": "Weaviate Query",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "Weaviate Insert": {
      "ai_document": [
        []
      ]
    },
    "Weaviate Query": {
      "ai_vectorStore": [
        [
          {
            "node": "Vector Tool",
            "type": "ai_vectorStore",
            "index": 0
          }
        ]
      ]
    },
    "Vector Tool": {
      "ai_tool": [
        [
          {
            "node": "RAG Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Window Memory": {
      "ai_memory": [
        [
          {
            "node": "RAG Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "RAG Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "RAG Agent": {
      "main": [
        [
          {
            "node": "Append Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ],
      "onError": [
        [
          {
            "node": "Slack Alert",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "triggerCount": 1
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Idea to IG Carousel. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsOpenAi, vectorStoreWeaviate. Webhook trigger; 12 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Calendar Event Auto-tag. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsOpenAi, vectorStoreWeaviate. Webhook trigger; 12 nodes.

Text Splitter Character Text Splitter, OpenAI Embeddings, Weaviate Vector Store +6
AI & RAG

Grant Application Routing. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsOpenAi, vectorStoreSupabase. Webhook trigger; 12 nodes.

Text Splitter Character Text Splitter, OpenAI Embeddings, Supabase Vector Store +6
AI & RAG

API Stats Chart. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsOpenAi, vectorStorePinecone. Webhook trigger; 12 nodes.

Text Splitter Character Text Splitter, OpenAI Embeddings, Pinecone Vector Store +6
AI & RAG

Customer Auto-tagging. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsCohere, vectorStorePinecone. Webhook trigger; 12 nodes.

Text Splitter Character Text Splitter, Cohere Embeddings, Pinecone Vector Store +6
AI & RAG

Order Shipped Notification. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsOpenAi, vectorStoreSupabase. Webhook trigger; 12 nodes.

Text Splitter Character Text Splitter, OpenAI Embeddings, Supabase Vector Store +6