8
n8n 한국어amn8n.com

키워드에서 블로그 게시물 자동화 템플릿

고급

이것은Content Creation, Multimodal AI분야의자동화 워크플로우로, 23개의 노드를 포함합니다.주로 Code, Webhook, SplitOut, Aggregate, Wordpress 등의 노드를 사용하며. Google SERP, Claude AI 및 WordPress를 사용한 SEO 콘텐츠 생성 자동화

사전 요구사항
  • HTTP Webhook 엔드포인트(n8n이 자동으로 생성)
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Sheets API 인증 정보
  • Anthropic API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "cVycGSs6Kl1k4DvB",
  "meta": {
    "instanceId": "5acc1d4f8dd8b88bff7bef6ebd1e1357663357e2db96ad19039848081531bd44"
  },
  "name": "Keyword To Blog Post Automation Template",
  "tags": [
    {
      "id": "7k0vNuUSUb76SZ0j",
      "name": "Template",
      "createdAt": "2025-07-14T19:46:04.274Z",
      "updatedAt": "2025-07-14T19:46:04.274Z"
    }
  ],
  "nodes": [
    {
      "id": "2e9c1ed9-1b06-4a81-af44-0a97364480f9",
      "name": "Webhook 트리거",
      "type": "n8n-nodes-base.webhook",
      "position": [
        580,
        140
      ],
      "webhookId": "208f9a1a-60ce-40d8-ac20-1909f0ac4257",
      "parameters": {
        "path": "208f9a1a-60ce-40d8-ac20-1909f0ac4257",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 2
    },
    {
      "id": "9baf6433-5253-4b05-829e-ca20da37d003",
      "name": "메모",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        780,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 340,
        "height": 280,
        "content": "## Item Extraction\nReceive content ideas through webhook and process each one"
      },
      "typeVersion": 1
    },
    {
      "id": "c9e9048c-1b4b-4afe-9740-0698000f3e4c",
      "name": "분할 출력",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        900,
        140
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "body.rows"
      },
      "typeVersion": 1
    },
    {
      "id": "e5a12b33-abac-4b98-a355-c7c729c4f822",
      "name": "메모1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 460,
        "height": 1260,
        "content": "## Workflow explanation\n\n*last updated: 11.08.2025*\n\n### Preparation \n\n1. *(In Excel)* you set the keyword you want to generate content for on **Prioritized = yes**\n2. *(In Excel)* you click on **Prepare Content** and the workflow will be triggered automatically\n\n## Workflow functionality\n\n### 1. Receive Data and prepare runs\n1. Webhook receives the prioritized rows from the google sheet\n2. it separates each row and extracts the actual keyword\n2.1 it updated the row in google sheets that the automation has started\n\n### 2. Get real-time SERP results from Google\n1. Query a custom Search Engine and search for the target keyword\n2. Split the SERP results into separate items\n3. Get the actual real-time data from the website\n4. Extract the text from the web page\n\n### 3. AI Article Analysis\n1. Analyse each text with AI. Get content structure and additional information.\n2. Aggregate all analyzed articles separately\n3. Create a SEO optimized Content Brief by comparing analyzed texts, identify content gaps etc.\n4. Create a content draft from the Content Brief with AI\n\n#### 4. Publish and update google sheet\n1. Publish the content draft directly to your WordPress Website (still a draft)\n2. Update Google Sheet \n\n\n\n## Setup\n1. Copy Excel Template\n2. Add your webhook to the Google Script\n3. Create Custom Search API and connect via API key\n4. Add your Claude API Key \n5. Connect to your WordPress website\n\n\n### Full Setup Guide ###\nhttps://opaque-face-45b.notion.site/Content-Automation-Pipeline-Walkthrough-221f1bceaabe808fb4efdc7c7be71bac"
      },
      "typeVersion": 1
    },
    {
      "id": "5bd96cde-cacd-452f-be56-0d40d4393a04",
      "name": "메모2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        520,
        700
      ],
      "parameters": {
        "color": 4,
        "width": 1520,
        "height": 540,
        "content": "## AI Article Analysis\n"
      },
      "typeVersion": 1
    },
    {
      "id": "37bdb2ec-9c5a-4b01-b46e-6da0866f79d4",
      "name": "메모4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2060,
        0
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 660,
        "content": "## Update Excel\n\nUddating the rows that are being processed\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "8206d317-13ab-4406-af94-cb570dafdd00",
      "name": "메모5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2060,
        700
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 300,
        "content": "## Send Draft to Wordpress\n"
      },
      "typeVersion": 1
    },
    {
      "id": "c07308e8-1ab0-4ce7-82f7-c1ca34dbe19f",
      "name": "split into different SERP results",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1160,
        420
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "items"
      },
      "typeVersion": 1
    },
    {
      "id": "ac323545-015f-4eb7-8a79-5483f5ff8473",
      "name": "집계",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1220,
        800
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "output"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "adc61223-1536-4871-8415-1050360ade36",
      "name": "Claude Haiku 3.5 Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
      "position": [
        920,
        1060
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "claude-3-5-haiku-20241022",
          "cachedResultName": "Claude Haiku 3.5"
        },
        "options": {}
      },
      "credentials": {
        "anthropicApi": {
          "id": "6ofdvdr8Hm4jzCvt",
          "name": "Placeholder Anthropic Account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "8346dd6f-4da9-44ff-b8cb-896581286a28",
      "name": "Claude Sonnet 3.7",
      "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
      "position": [
        1760,
        1060
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "claude-3-7-sonnet-20250219",
          "cachedResultName": "Claude Sonnet 3.7"
        },
        "options": {}
      },
      "credentials": {
        "anthropicApi": {
          "id": "6ofdvdr8Hm4jzCvt",
          "name": "Placeholder Anthropic Account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "6076d8f4-f732-43b9-8f31-f081796a637f",
      "name": "Content Analysis Structure",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1160,
        1060
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"contentFormat\": \"listicle | how-to | guide | comparison | opinion | review | other\",\n  \"contentType\": \"informational | commercial | transactional | navigational\",\n  \"intentClues\": [\n    \"e.g. how to\", \n    \"best tools\", \n    \"buy\", \n    \"guide\", \n    \"vs\", \n    \"tutorial\", \n    \"top 10\"\n  ],\n  \"averageWordCount\": 0,\n  \"headings\": [\n    \"H1 Title Example\",\n    \"H2 Subtopic One\",\n    \"H2 Subtopic Two\",\n    \"H3 Nested Topic\"\n  ],\n  \"subtopics\": [\n    \"Definition of X\",\n    \"Benefits of Y\",\n    \"How to do Z\",\n    \"Common mistakes\"\n  ],\n  \"summaryTakeaways\": [\n    \"Key takeaway 1\",\n    \"Key takeaway 2\",\n    \"Key takeaway 3\"\n  ],\n  \"answeredQuestions\": [\n    \"What is X?\",\n    \"How does Y work?\",\n    \"Why is Z important?\"\n  ],\n  \"uniqueAngles\": [\n    \"Case study from a startup using X\",\n    \"Comparison to real-world analogy\",\n    \"Includes visuals that others don’t\"\n  ],\n  \"contentGaps\": [\n    \"No examples of practical implementation\",\n    \"Missed current 2024 data updates\",\n    \"Lacked pros and cons comparison\"\n  ]\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "7f0ff7a4-aab7-4692-9565-e36e72858289",
      "name": "Content Brief Structure",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1560,
        1060
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"targetKeyword\": \"your keyword here\",\n  \"searchIntent\": \"informational | commercial | etc.\",\n  \"recommendedFormat\": \"how-to | listicle | etc.\",\n  \"idealLength\": \"1200–1500 words\",\n  \"targetAudience\": \"e.g. SaaS founders, content creators\",\n  \"titleSuggestion\": \"Best Tools for Automating Content Repurposing in 2024\",\n  \"metaDescription\": \"Discover the top tools and workflows to repurpose YouTube content into blogs, social posts, and more.\",\n  \"outline\": [\n    \"Introduction\",\n    \"Why Content Repurposing Matters\",\n    \"Top Tools to Use\",\n    \"How to Set Up an Automation Flow\",\n    \"Common Mistakes to Avoid\",\n    \"Conclusion\"\n  ],\n  \"mustIncludeSubtopics\": [\n    \"Benefits of content repurposing\",\n    \"Overview of tools like Repurpose.io, Zapier, n8n\",\n    \"Step-by-step setup guide\"\n  ],\n  \"answeredQuestions\": [\n    \"How do I turn a YouTube video into a blog post?\",\n    \"What tools automate content repurposing?\"\n  ],\n  \"uniqueAngle\": \"Focus on a solo creator’s use case using free/low-cost tools\",\n  \"contentGapsToFill\": [\n    \"Most competitors don’t explain setup steps clearly\",\n    \"None include a downloadable automation template\"\n  ],\n  \"ctaSuggestion\": \"Download the free workflow template + join my newsletter\"\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "5d8ddcda-34e3-4de2-b7d3-ec7d2973f2fb",
      "name": "AI Article Analysis",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        880,
        800
      ],
      "parameters": {
        "text": "=This is the text:\n {{ $json.text }}",
        "batching": {},
        "messages": {
          "messageValues": [
            {
              "message": "You are a seasonsed SEO professional and Text Analyser with some deep insights into helpful content. Whenever you get a text, I want you to analyse and understand the text.  Then, I want you to extract the following from each text: \n1. the ContentFormat,  which is either a listicle, how-to, guide, comparision, opinion, review, or other. \n2. the ContentType, which is either informational, commercial, transactional or navigational\n3. the IntentClues, which can be how-to, best tools, buy, guide, vs, tutorial, ranking, top 10,\n4. the AverageWordCount, which is the average word length of the text\n5. all the headings, h1,h2,h3, up to h6 if necessary. And, if possible, also Add the hX tag before the heading\n6. all the subtopics: definitions of x, benefits of y, how to do.. and so on\n7. a list of key-takeaways.\n8. a list of answered questions in the text\n9. the UniqueAngles of the text. for example case studies, comparisons to real-world scenarios, etc.\n10. a list of contentGaps that you see in the text."
            }
          ]
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "executeOnce": false,
      "typeVersion": 1.7
    },
    {
      "id": "cac3d12d-5777-4929-87aa-a2739592160a",
      "name": "AI Content Brief Generator",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1400,
        800
      ],
      "parameters": {
        "text": "=The target Keyword is: AI Agent vs AI Chatbot\n\nhere are the summaries: \n{{ JSON.stringify($json.output) }}\n",
        "batching": {},
        "messages": {
          "messageValues": [
            {
              "message": "You are an expert SEO content strategist. Your task is to analyze a list of SERP summaries (from top-ranking pages for a keyword) and generate a high-quality content brief to guide the writing of a new blog post that is more useful and competitive than existing content.  \n\nEach SERP summary is structured in JSON and contains insights about a competing article, including content format, content type, headings, subtopics, summary takeaways, answered questions, unique angles, and content gaps.  \n\nUse this information to: \n- Identify the dominant content format and intent \n- Suggest a competitive and original structure \n- Fill in the content gaps identified across competitors \n- Highlight what to include and what to improve \n- Suggest a title, meta description, outline, subtopics, and CTA \n- Focus on user value and differentiation  \n\nReturn the output as a single JSON object with the following structure:  {   \"targetKeyword\": \"string\",   \"searchIntent\": \"string\",   \"recommendedFormat\": \"string\",   \"idealLength\": \"string\",   \"targetAudience\": \"string\",   \"titleSuggestion\": \"string\",   \"metaDescription\": \"string\",   \"outline\": [\"h2 header one\", \"h2 header two\",\"h3 sub-header two-one\", \"...\"],   \"mustIncludeSubtopics\": [\"topic 1\", \"topic 2\", \"...\"],   \"answeredQuestions\": [\"question 1\", \"question 2\", \"...\"],   \"uniqueAngle\": \"string\",   \"contentGapsToFill\": [\"gap 1\", \"gap 2\", \"...\"],   \"ctaSuggestion\": \"string\" }  Use clear, specific language in your output. Be strategic, not generic."
            }
          ]
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.7
    },
    {
      "id": "f54e0944-b55e-4409-bacf-18db8471af2e",
      "name": "AI Content Draft",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1760,
        800
      ],
      "parameters": {
        "text": "=This is the keyword: \n'AI Agents vs AI Chatbots'\n\nThe content brief is here:\n{{ JSON.stringify($json.output) }}\n\nThese are the summaries:\n{{ JSON.stringify($('Aggregate').item.json.output) }}",
        "batching": {},
        "messages": {
          "messageValues": [
            {
              "message": "You are a seasoned SEO blog writer and technical content creator. Your writing style is warm, human, and easy to understand — like you're explaining things to a curious and smart 16-year-old. You combine technical depth with clarity and a dash of quirkiness. You're speaking to solopreneurs, developers, and technically minded professionals. The goal is to educate, inform, and sometimes lightly entertain.\n\nYou will receive:\n- A main keyword\n- A content brief in JSON format\n- A list of summarized top-ranking articles from the first page of Google (also in JSON format)\n- A preferred content structure, such as “how-to guide” or “listicle”\n\nYou must understand the content brief and all provided article summaries before drafting anything.\n\nYour tasks:\n\n1. Generate a fresh, SEO-friendly title, primarily based on the brief, but also informed by top articles.\n\n2. Create an outline using <h2> and <h3> headers. Make sure each section is relevant to the keyword and useful for the reader.\n- If a header doesn’t make sense, leave it out.\n- Follow the format and tone requested in the structure parameter (e.g., how-to guide, opinion, etc.)\n\n3. For each <h2> and <h3>:\n- List a few bullet points on what should be covered and from what angle.\n- Write a draft paragraph for each bullet point.\n\n4. Whenever appropriate, include examples, data, or references.\n- If you can’t find any directly, add a placeholder like [add example here] or [research link for XYZ] — this helps the human editor finish the post efficiently.\n\n\nImportant notes:\n\n🔚 Final Output Format (IMPORTANT)\nOutput only the HTML text\n\nDo NOT return markdown, YAML, or any explanation.\nDo NOT include \"output\" or \"response\" keys.\nDo NOT return a code block. just the raw html text"
            }
          ]
        },
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "ee722c5b-d96b-481a-8393-f75d88cf58ed",
      "name": "메모6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        520,
        320
      ],
      "parameters": {
        "color": 3,
        "width": 1520,
        "height": 340,
        "content": "## SERP Extraction\nGet the SERPS from Google for given Keyword"
      },
      "typeVersion": 1
    },
    {
      "id": "f6fbe74d-8efa-4cc6-9671-4dcb479adcdc",
      "name": "Search in Google Search API1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        900,
        420
      ],
      "parameters": {
        "url": "https://www.googleapis.com/customsearch/v1",
        "options": {},
        "sendQuery": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "q",
              "value": "{{ $json.keywordString }}"
            },
            {
              "name": "key"
            },
            {
              "name": "cx"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "ffa72fee-3e14-45cd-bf75-ddce5cdbdba7",
      "name": "Get Raw Web Page",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "position": [
        1380,
        420
      ],
      "parameters": {
        "url": "={{ $json.link }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "96c04d4a-148c-4832-ab16-1758abd09cb3",
      "name": "Extract Text from Web Page",
      "type": "n8n-nodes-base.code",
      "onError": "continueErrorOutput",
      "position": [
        1640,
        420
      ],
      "parameters": {
        "mode": "runOnceForEachItem",
        "jsCode": "const data = $json.data;\n\nfunction extractTextWithHeaders(html) {\n  let cleanedHTML = html\n    .replace(/<script[\\s\\S]*?>[\\s\\S]*?<\\/script>/gi, '')\n    .replace(/<style[\\s\\S]*?>[\\s\\S]*?<\\/style>/gi, '');\n\n  cleanedHTML = cleanedHTML.replace(/<(h[1-6])[^>]*>(.*?)<\\/\\1>/gi, (match, tag, content) => {\n    return `\\n\\n[${tag.toUpperCase()}] ${content.trim()} [/${tag.toUpperCase()}]\\n\\n`;\n  });\n\n  cleanedHTML = cleanedHTML.replace(/<[^>]+>/g, '');\n\n  cleanedHTML = cleanedHTML.replace(/\\s+/g, ' ').trim();\n\n  return cleanedHTML;\n}\n\nconst extractedText = extractTextWithHeaders(data);\n\nconsole.log(extractedText);\n\n// Return as output\nreturn { text: extractedText };\n"
      },
      "typeVersion": 2
    },
    {
      "id": "3012bb4f-7f50-4bf1-aba6-bf8098415b80",
      "name": "Send Draft to WordPress",
      "type": "n8n-nodes-base.wordpress",
      "position": [
        2140,
        800
      ],
      "parameters": {
        "title": "Testtest",
        "additionalFields": {
          "content": "={{ $json.text }}"
        }
      },
      "credentials": {
        "wordpressApi": {
          "id": "sQgKVLHWhLpSqgSU",
          "name": "Placeholder Wordpress API"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ee44cee8-60ce-48d2-90a7-6064752c6486",
      "name": "Update Progress Info",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2300,
        140
      ],
      "parameters": {
        "columns": {
          "value": {
            "Column 1": "Started processing",
            "row_number": "={{ $json.rowNumber }}"
          },
          "schema": [
            {
              "id": "Keyword",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Keyword",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Parent",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Parent",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Info",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Info",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Comment",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Comment",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "post type",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "post type",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "keyword type",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "keyword type",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Prioritized",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Prioritized",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Processed",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Processed",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "written",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "written",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "published",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "published",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "internal links added everywhere",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "internal links added everywhere",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Column 1",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Column 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "row_number"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1deCQg3HYLywY_gNcr7QNnTyc-ZKbOec-KKg132pxRcs/edit#gid=0",
          "cachedResultName": "Ideas"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1deCQg3HYLywY_gNcr7QNnTyc-ZKbOec-KKg132pxRcs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1deCQg3HYLywY_gNcr7QNnTyc-ZKbOec-KKg132pxRcs/edit?usp=drivesdk",
          "cachedResultName": "CallMeEugeniusContent"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "Kw0awgkSoSjNZzSJ",
          "name": "Placeholder Google Sheets account"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "798de9a5-94ad-4488-96a8-fddde3969095",
      "name": "Update Excel Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2300,
        380
      ],
      "parameters": {
        "columns": {
          "value": {
            "Column 1": "processing finished",
            "row_number": "={{ $json.row_number }}"
          },
          "schema": [
            {
              "id": "Keyword",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Keyword",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Parent",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Parent",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Info",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Info",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Comment",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Comment",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "post type",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "post type",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "keyword type",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "keyword type",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Prioritized",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Prioritized",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Processed",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Processed",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "written",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "written",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "published",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "published",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "internal links added everywhere",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "internal links added everywhere",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Column 1",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Column 1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "row_number"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1deCQg3HYLywY_gNcr7QNnTyc-ZKbOec-KKg132pxRcs/edit#gid=0",
          "cachedResultName": "Ideas"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1deCQg3HYLywY_gNcr7QNnTyc-ZKbOec-KKg132pxRcs",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1deCQg3HYLywY_gNcr7QNnTyc-ZKbOec-KKg132pxRcs/edit?usp=drivesdk",
          "cachedResultName": "CallMeEugeniusContent"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "Kw0awgkSoSjNZzSJ",
          "name": "Placeholder Google Sheets account"
        }
      },
      "typeVersion": 4.5
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "f9f316c8-82cf-44b8-a986-2fefd03d24cc",
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate": {
      "main": [
        [
          {
            "node": "cac3d12d-5777-4929-87aa-a2739592160a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "ee44cee8-60ce-48d2-90a7-6064752c6486",
            "type": "main",
            "index": 0
          },
          {
            "node": "f6fbe74d-8efa-4cc6-9671-4dcb479adcdc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f54e0944-b55e-4409-bacf-18db8471af2e": {
      "main": [
        [
          {
            "node": "3012bb4f-7f50-4bf1-aba6-bf8098415b80",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ffa72fee-3e14-45cd-bf75-ddce5cdbdba7": {
      "main": [
        [
          {
            "node": "96c04d4a-148c-4832-ab16-1758abd09cb3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8346dd6f-4da9-44ff-b8cb-896581286a28": {
      "ai_languageModel": [
        [
          {
            "node": "f54e0944-b55e-4409-bacf-18db8471af2e",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "5d8ddcda-34e3-4de2-b7d3-ec7d2973f2fb": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "adc61223-1536-4871-8415-1050360ade36": {
      "ai_languageModel": [
        [
          {
            "node": "5d8ddcda-34e3-4de2-b7d3-ec7d2973f2fb",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "cac3d12d-5777-4929-87aa-a2739592160a",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "7f0ff7a4-aab7-4692-9565-e36e72858289": {
      "ai_outputParser": [
        [
          {
            "node": "cac3d12d-5777-4929-87aa-a2739592160a",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "3012bb4f-7f50-4bf1-aba6-bf8098415b80": {
      "main": [
        [
          {
            "node": "798de9a5-94ad-4488-96a8-fddde3969095",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cac3d12d-5777-4929-87aa-a2739592160a": {
      "main": [
        [
          {
            "node": "f54e0944-b55e-4409-bacf-18db8471af2e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6076d8f4-f732-43b9-8f31-f081796a637f": {
      "ai_outputParser": [
        [
          {
            "node": "5d8ddcda-34e3-4de2-b7d3-ec7d2973f2fb",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "96c04d4a-148c-4832-ab16-1758abd09cb3": {
      "main": [
        [
          {
            "node": "5d8ddcda-34e3-4de2-b7d3-ec7d2973f2fb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f6fbe74d-8efa-4cc6-9671-4dcb479adcdc": {
      "main": [
        [
          {
            "node": "c07308e8-1ab0-4ce7-82f7-c1ca34dbe19f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c07308e8-1ab0-4ce7-82f7-c1ca34dbe19f": {
      "main": [
        [
          {
            "node": "ffa72fee-3e14-45cd-bf75-ddce5cdbdba7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

고급 - 콘텐츠 제작, 멀티모달 AI

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
고급
노드 수23
카테고리2
노드 유형11
난이도 설명

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

저자

Data- & Workflow Automation. 10+ years of experience in automating data onboarding, data management and workflow optimization in the energy trading environment.

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34