AutomationFlowsAI & RAG › Course Generator

Course Generator

Course_generator. Uses agent, lmChatOpenRouter. Webhook trigger; 4 nodes.

Webhook trigger★★☆☆☆ complexityAI-powered4 nodesAgentOpenRouter Chat
AI & RAG Trigger: Webhook Nodes: 4 Complexity: ★★☆☆☆ AI nodes: yes Added:

This workflow follows the Agent → OpenRouter Chat 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
{
  "createdAt": "2025-04-15T08:32:54.646Z",
  "updatedAt": "2025-04-17T13:51:08.000Z",
  "id": "STzZzI4lias6kMy6",
  "name": "Course generator",
  "active": true,
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "coursegen",
        "responseMode": "responseNode",
        "options": {}
      },
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [
        0,
        0
      ],
      "id": "b59e1a7a-0786-43e7-b966-7c0e49ca48d9",
      "name": "Webhook"
    },
    {
      "parameters": {
        "promptType": "define",
        "text": "=\u0412\u044b\u0434\u0430\u0439 \u043c\u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e.\n\n\u041d\u0430\u043f\u0438\u0448\u0438 \u0441\u0442\u0430\u0442\u044c\u044e \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c  \u044f\u0437\u044b\u043a\u0435 \u043d\u0430 \u0442\u0435\u043c\u0443 {{ $('Webhook').item.json.body.topic }} \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u043f\u043b\u0430\u043d\u0443: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439 \u043f\u043e\u0434\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438 {{ $('Webhook').item.json.body.plan }} \u0448\u0442\u0443\u043a\u0438 \u0438\u043b\u0438 \u043f\u043e \u0433\u043e\u0442\u043e\u0432\u043e\u043c\u0443 \u043f\u043b\u0430\u043d\u0443. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043e\u0442\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u0432 \u0447\u0438\u0441\u0442\u043e\u043c Markdown (\u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f HTML \u0438 \u0431\u043b\u043e\u043a\u043e\u0432 \u043a\u043e\u0434\u0430) \u0438 \u043d\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0445 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432 \u0438\u043b\u0438 \u0444\u0440\u0430\u0437 \u0432\u0440\u043e\u0434\u0435 \u00ab\u0432\u043e\u0442 \u0441\u0442\u0430\u0442\u044c\u044f \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435\u00bb.\n\n\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0442\u0430\u0442\u044c\u0438 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439:\n\t1.\t\u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435: \u043e\u0434\u0438\u043d \u0430\u0431\u0437\u0430\u0446 \u0431\u0435\u0437 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u043e\u0432 \u0438 \u0441\u043f\u0438\u0441\u043a\u043e\u0432.\n\t2.\t\u041f\u043e\u0434\u0442\u0435\u043c\u044b: \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u043f\u043e\u0434\u0442\u0435\u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0439 \u043f\u043e\u0434\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f (\u043d\u0430\u0447\u0438\u043d\u0430\u0439 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 ##) \u0438 \u0434\u043e\u0431\u0430\u0432\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043e\u0434\u0438\u043d \u0438\u0437 \u0434\u0432\u0443\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432, \u0447\u0435\u0440\u0435\u0434\u0443\u044e\u0449\u0438\u0445\u0441\u044f \u0434\u043b\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u0434\u0442\u0435\u043c.\n\u0428\u0430\u0431\u043b\u043e\u043d 1:\n\t\u2022\t\u0410\u0431\u0437\u0430\u0446 \u0442\u0435\u043a\u0441\u0442\u0430.\n\t\u2022\t\u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0432\u0432\u043e\u0434\u044f\u0449\u0435\u0435 \u0441\u043f\u0438\u0441\u043e\u043a.\n\t\u2022\t\u0421\u043f\u0438\u0441\u043e\u043a \u0440\u043e\u0432\u043d\u043e \u0438\u0437 5 \u043a\u0440\u0430\u0442\u043a\u0438\u0445 \u043f\u0443\u043d\u043a\u0442\u043e\u0432, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u043f\u043e\u0434\u0442\u0435\u043c\u043e\u0439.\n\t\u2022\t\u0417\u0430\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0431\u0437\u0430\u0446.\n\u0428\u0430\u0431\u043b\u043e\u043d 2:\n\t\u2022\t\u041e\u0442 1 \u0434\u043e 3 \u0430\u0431\u0437\u0430\u0446\u0435\u0432 \u0442\u0435\u043a\u0441\u0442\u0430 \u0431\u0435\u0437 \u0441\u043f\u0438\u0441\u043a\u043e\u0432.\n\n\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 \u0434\u043b\u044f \u0441\u0442\u0430\u0442\u044c\u0438:\n\u041a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\n\n\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a \u0447\u0438\u0441\u0442\u044b\u0439 Markdown \u0431\u0435\u0437 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043e\u0431\u0435\u0440\u0442\u043e\u043a \u0438\u043b\u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u0434\u0430.\n\u041d\u0435\u043b\u044c\u0437\u044f \u043f\u0438\u0441\u0430\u0442\u044c \u0446\u0438\u0444\u0440 \u0432 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u044b\u0445 \u0441\u043a\u043e\u0431\u043a\u0430\u0445. \n\u0421\u043f\u0438\u0441\u043a\u0438 \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0434\u0435\u043b\u0430\u0439 \u0447\u0435\u0440\u0435\u0437 \u0434\u0435\u0444\u0438\u0441 -\n\u0412\u043a\u043b\u044e\u0447\u0438 \u0434\u0435\u0442\u0430\u043b\u0438, \u0447\u0438\u0441\u043b\u0430:, \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0434\u0435\u0442\u0430\u043b\u0438, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u0435\u0441\u0442\u044c \u0432 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u0445. ",
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.agent",
      "typeVersion": 1.7,
      "position": [
        340,
        0
      ],
      "id": "121b0646-71de-46ba-b30a-d26cafc8205b",
      "name": "AI Agent"
    },
    {
      "parameters": {
        "model": "google/gemma-3-27b-it:free",
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "typeVersion": 1,
      "position": [
        480,
        220
      ],
      "id": "9c14d3ec-360c-4b0d-b174-4a17d2fba0e2",
      "name": "OpenRouter Chat Model",
      "credentials": {
        "openRouterApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "respondWith": "text",
        "options": {}
      },
      "type": "n8n-nodes-base.respondToWebhook",
      "typeVersion": 1.1,
      "position": [
        800,
        0
      ],
      "id": "103a06b9-e0e4-4e68-add4-68063020d128",
      "name": "Respond to Webhook"
    }
  ],
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenRouter Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent": {
      "main": [
        [
          {
            "node": "Respond to Webhook",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "staticData": null,
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "versionId": "021b82d7-fa90-4314-ae9f-329b1b68758f",
  "triggerCount": 1,
  "tags": []
}

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

Course_generator. Uses agent, lmChatOpenRouter. Webhook trigger; 4 nodes.

Source: https://github.com/AdminRHS/n8n_creds_and_workflows/blob/cc2b1b66f8a3b0c4bd367e9b90faa9d21a131b69/workflows/Xd1Sm982bKIqZmsV.json — 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

Prompt Refiner. Uses lmChatOpenRouter, chainLlm, agent. Webhook trigger; 6 nodes.

OpenRouter Chat, Chain Llm, Agent
AI & RAG

Course generator. Uses agent, lmChatOpenRouter. Webhook trigger; 4 nodes.

Agent, OpenRouter Chat
AI & RAG

🧪 LABR - nuevo asistente (REPARADO). Uses httpRequest, postgres, postgresTool, toolCalculator. Webhook trigger; 63 nodes.

HTTP Request, Postgres, Postgres Tool +9
AI & RAG

leads. Uses supabase, gmail, formTrigger, httpRequest. Webhook trigger; 62 nodes.

Supabase, Gmail, Form Trigger +13
AI & RAG

Brokeria-v20. Uses n8n-nodes-waha, httpRequest, redis, googleGemini. Webhook trigger; 56 nodes.

N8N Nodes Waha, HTTP Request, Redis +7