キーワードからブログ記事自動化テンプレート
上級
これは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
使用ノード (23)
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下の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など)は別途料金が発生する場合があります。
関連ワークフロー
OpenAI、RunwayML、ElevenLabsを使って無顔の短い動画を自動化
OpenAI、RunwayML、ElevenLabs を使ってアニメ顔の短い動画を自動化:スクリプトからソーシャルメディアへ
Set
Code
Wait
+
Set
Code
Wait
56 ノードLeeWei
コンテンツ作成
WordPressブログの自動化プロフェッショナル版(先端研究)v2.1マーケットプラグイン
GPT-4o、Perplexity AI、そして多言語対応を使ったSEO最適化ブログ作成の自動化
If
Set
Xml
+
If
Set
Xml
125 ノードDaniel Ng
コンテンツ作成
コンテンツジェネレーター v3
AI驱动ブログ自動化:使用GPT-4生成并公開SEO記事至WordPressとTwitter
If
Set
Code
+
If
Set
Code
144 ノードJay Emp0
コンテンツ作成
キーワードからGPT-5とfal.ai画像を使ってWordPressまで自動SEOブログ生成のプロセス
GPT-5とfal.ai画像を使用したキーワードからWordPressへのSEOブログ自動化プロセス
Set
Code
Wait
+
Set
Code
Wait
96 ノードPaul
コンテンツ作成
WordPress、OpenAI、Perplexityを活用した自動化SEOブログ公開
WordPress、OpenAI、Perplexityを活用した自動化SEOブログ公開
Set
Limit
Split Out
+
Set
Limit
Split Out
43 ノードLukaszB
コンテンツ作成
YouTube 動画をブログ記事に変換
Mistral AIとGemini画像生成を利用してYouTube動画からブログ記事を作成
Set
Code
Merge
+
Set
Code
Merge
56 ノードZakwan
コンテンツ作成
ワークフロー情報
難易度
上級
ノード数23
カテゴリー2
ノードタイプ11
作成者
Eugen
@callmeeugeniusData- & Workflow Automation. 10+ years of experience in automating data onboarding, data management and workflow optimization in the energy trading environment.
外部リンク
n8n.ioで表示 →
このワークフローを共有