RapidAPIおよびGoogleスプレッドシートを基にした自動SEOキーワード分析
上級
これはMarket Research, Multimodal AI分野の自動化ワークフローで、21個のノードを含みます。主にSet, Code, FormTrigger, HttpRequest, GoogleSheetsなどのノードを使用。 RapidAPIおよびGoogle Sheetsを使用した自動SEOキーワード分析
前提条件
- •ターゲットAPIの認証情報が必要な場合あり
- •Google Sheets API認証情報
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"meta": {
"instanceId": "60c025075753afcab9f803964b4caaca9402f435deb4efafbb8e3b93b54d8752"
},
"nodes": [
{
"id": "2b931767-0890-44bd-bd6e-0520d2d30d19",
"name": "フォーム送信時",
"type": "n8n-nodes-base.formTrigger",
"position": [
-800,
300
],
"webhookId": "048b06f3-4345-4351-903d-1f15486955fb",
"parameters": {
"options": {},
"formTitle": "OnPage SEO ( Keyword)",
"formFields": {
"values": [
{
"fieldLabel": "keyword",
"requiredField": true
},
{
"fieldLabel": "country",
"requiredField": true
}
]
},
"formDescription": "OnPage SEO ( Keyword)"
},
"typeVersion": 2.2
},
{
"id": "6744f81f-3a81-4602-b6ce-24a47aefcf0d",
"name": "グローバルストレージ",
"type": "n8n-nodes-base.set",
"position": [
-480,
300
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "10714a4e-2be6-4167-aef5-afe30eebdc2b",
"name": "keyword",
"type": "string",
"value": "={{ $json.keyword }}"
},
{
"id": "6d160d8b-ab11-4f0a-a484-2e3f8f7f3033",
"name": "country",
"type": "string",
"value": "={{ $json.country }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "bcc6356f-69b7-48cb-8901-2155a7a354d8",
"name": "再フォーマット",
"type": "n8n-nodes-base.code",
"position": [
200,
20
],
"parameters": {
"jsCode": "\nreturn $input.first().json.data.semrushAPI.broadMatchKeywords;"
},
"typeVersion": 2
},
{
"id": "880567fc-0355-4e2d-907b-91138a74600b",
"name": "再フォーマット2",
"type": "n8n-nodes-base.code",
"position": [
240,
360
],
"parameters": {
"jsCode": "return $input.first().json.data.semrushAPI.keywordDifficulty[0];"
},
"typeVersion": 2
},
{
"id": "21b7e79e-d94d-4dad-b40f-8c78eadf5958",
"name": "再フォーマット5",
"type": "n8n-nodes-base.code",
"position": [
260,
700
],
"parameters": {
"jsCode": "return $input.first().json.data.semrushAPI.serpResults;"
},
"typeVersion": 2
},
{
"id": "5d57d994-d970-4670-8868-18875f16890d",
"name": "キーワードインサイト",
"type": "n8n-nodes-base.googleSheets",
"position": [
500,
20
],
"parameters": {
"columns": {
"value": {},
"schema": [],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "",
"cachedResultName": "Keyword Insights"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1dCSO-gv_mPD3O0QACeJaBFtjYGqtF-iF2_6iCuvm_Xw",
"cachedResultUrl": "",
"cachedResultName": "Website onPage ( Keyword)"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "Rt0RWApx8PL9t0RF",
"name": "Google Docs account"
}
},
"typeVersion": 4.6
},
{
"id": "c2f0a816-6ba0-48b2-a764-dc19203aa3ed",
"name": "キーワードインサイトリクエスト",
"type": "n8n-nodes-base.httpRequest",
"position": [
-140,
20
],
"parameters": {
"url": "https://seo-on-page.p.rapidapi.com/keyword-tool.php",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "multipart-form-data",
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "keyword",
"value": "={{ $json.keyword }}"
},
{
"name": "country",
"value": "={{ $json.country }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "x-rapidapi-host",
"value": "seo-on-page.p.rapidapi.com"
},
{
"name": "x-rapidapi-key",
"value": "your key"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "5e918cef-3e92-4085-902c-19c1c56e0a4e",
"name": "キーワード難易度リクエスト",
"type": "n8n-nodes-base.httpRequest",
"position": [
-20,
380
],
"parameters": {
"url": "https://seo-on-page.p.rapidapi.com/keywordDifficulty.php",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "multipart-form-data",
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "keyword",
"value": "={{ $json.keyword }}"
},
{
"name": "country",
"value": "={{ $json.country }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "x-rapidapi-host",
"value": "=seo-on-page.p.rapidapi.com"
},
{
"name": "x-rapidapi-key",
"value": "your key"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "aed9c3bf-f81e-423a-a176-ef5a97e9ee05",
"name": "キーワード難易度",
"type": "n8n-nodes-base.googleSheets",
"position": [
560,
340
],
"parameters": {
"columns": {
"value": {},
"schema": [
{
"id": "keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "keywordDifficultyIndex",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "keywordDifficultyIndex",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1445611850,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1dCSO-gv_mPD3O0QACeJaBFtjYGqtF-iF2_6iCuvm_Xw/edit#gid=1445611850",
"cachedResultName": "KeyWord Difficulty"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1dCSO-gv_mPD3O0QACeJaBFtjYGqtF-iF2_6iCuvm_Xw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1dCSO-gv_mPD3O0QACeJaBFtjYGqtF-iF2_6iCuvm_Xw/edit?usp=drivesdk",
"cachedResultName": "Website onPage ( Keyword)"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "Rt0RWApx8PL9t0RF",
"name": "Google Docs account"
}
},
"typeVersion": 4.6
},
{
"id": "95fabfa0-c82a-450f-a48e-a3eee77e7c82",
"name": "SERP結果",
"type": "n8n-nodes-base.googleSheets",
"position": [
660,
700
],
"parameters": {
"columns": {
"value": {},
"schema": [],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 684053301,
"cachedResultUrl": "",
"cachedResultName": "Serp Analytics"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1dCSO-gv_mPD3O0QACeJaBFtjYGqtF-iF2_6iCuvm_Xw",
"cachedResultUrl": "",
"cachedResultName": "Website onPage ( Keyword)"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "Rt0RWApx8PL9t0RF",
"name": "Google Docs account"
}
},
"typeVersion": 4.6
},
{
"id": "d1d45c51-227d-425d-97f5-7fd0d32ad593",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2100,
-200
],
"parameters": {
"width": 960,
"height": 1220,
"content": "# 📊 OnPage SEO (Keyword) - n8n Workflow\n\n## 📝 Description\nThis workflow automates keyword analysis for on-page SEO using form input (keyword and country), fetches keyword data from an API (including keyword insights, difficulty, and SERP data), and saves results into a Google Sheet.\n\n---\n\n## 🔧 Node-by-Node Overview\n\n### 1. **On form submission**\nTriggers when a form is submitted with required inputs: `keyword` and `country`.\n\n### 2. **Global Storage**\nStores the form inputs (`keyword`, `country`) into the workflow context for further use.\n\n### 3. **Keyword Insights Request**\nSends a POST request to the SEO API (`keyword-tool.php`) to fetch keyword data such as broad match keywords.\n\n### 4. **KeyWord Difficulty Request**\nSends a POST request to the SEO API (`keywordDifficulty.php`) to retrieve keyword difficulty and SERP results.\n\n### 5. **Re-Format**\nParses and extracts `broadMatchKeywords` from the keyword insights API response.\n\n### 6. **Re-Format 2**\nParses and extracts the `keywordDifficultyIndex` from the difficulty API response.\n\n### 7. **Re -Format 5**\nParses and extracts `serpResults` from the difficulty API response.\n\n### 8. **Keyword Insights**\nAppends the extracted keyword insights into the **\"Keyword Insights\"** sheet in the connected Google Sheet.\n\n### 9. **KeyWord Difficulty**\nAppends keyword and difficulty index data into the **\"KeyWord Difficulty\"** sheet in the connected Google Sheet.\n\n### 10. **SERP Result**\nAppends extracted SERP data into the **\"Serp Analytics\"** sheet in the connected Google Sheet.\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "e4815a76-56c1-4866-a6c0-1a6cea997e98",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-880,
140
],
"parameters": {
"height": 320,
"content": "### 1. 🟢 **On form submission**\n**Type:** `formTrigger` \n**Description:** Triggers when a user submits the form with `keyword` and `country` fields.\n"
},
"typeVersion": 1
},
{
"id": "4f9f580f-57ca-4b18-a2fa-09f3fab03451",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-560,
140
],
"parameters": {
"height": 320,
"content": "### 2. 📦 **Global Storage**\n**Type:** `set` \n**Description:** Stores the keyword and country values from the form for use in later nodes.\n"
},
"typeVersion": 1
},
{
"id": "ec770ca7-219c-4eb4-b677-10c7605d38bd",
"name": "付箋3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-220,
-160
],
"parameters": {
"height": 320,
"content": "### 3. 🌐 **Keyword Insights Request**\n**Type:** `httpRequest` \n**Description:** Sends a POST request to the RapidAPI SEO endpoint (`keyword-tool.php`) to get broad match keyword insights.\n"
},
"typeVersion": 1
},
{
"id": "1df871f7-f75d-424e-b011-6f58b4ad5e1d",
"name": "付箋4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-80,
180
],
"parameters": {
"height": 340,
"content": "### 4. 🌐 **KeyWord Difficulty Request**\n**Type:** `httpRequest` \n**Description:** Sends a POST request to the RapidAPI SEO endpoint (`keywordDifficulty.php`) to get keyword difficulty and SERP data.\n"
},
"typeVersion": 1
},
{
"id": "a168caf8-73e2-405c-8588-88939bf50038",
"name": "付箋5",
"type": "n8n-nodes-base.stickyNote",
"position": [
160,
-180
],
"parameters": {
"height": 340,
"content": "### 5. 🧾 **Re-Format**\n**Type:** `code` \n**Description:** Extracts the `broadMatchKeywords` array from the `keyword-tool` API response.\n"
},
"typeVersion": 1
},
{
"id": "51e19d07-9e11-46d9-9018-f473b1d1f4e5",
"name": "付箋6",
"type": "n8n-nodes-base.stickyNote",
"position": [
460,
-160
],
"parameters": {
"height": 320,
"content": "### 6. 📊 **Keyword Insights**\n**Type:** `googleSheets` \n**Description:** Appends the extracted broad match keyword data to the **\"Keyword Insights\"** sheet in Google Sheets."
},
"typeVersion": 1
},
{
"id": "dd43562a-5946-4491-8761-5700cdb1d8fc",
"name": "付箋7",
"type": "n8n-nodes-base.stickyNote",
"position": [
200,
200
],
"parameters": {
"height": 300,
"content": "### 7. 🧮 **Re-Format 2**\n**Type:** `code` \n**Description:** Extracts the `keywordDifficultyIndex` from the `keywordDifficulty` API response.\n"
},
"typeVersion": 1
},
{
"id": "f823bb2d-3042-4717-8421-a42c914f5fd0",
"name": "付箋8",
"type": "n8n-nodes-base.stickyNote",
"position": [
500,
200
],
"parameters": {
"height": 300,
"content": "### 8. 📈 **KeyWord Difficulty**\n**Type:** `googleSheets` \n**Description:** Appends the keyword and difficulty index to the **\"KeyWord Difficulty\"** sheet.\n"
},
"typeVersion": 1
},
{
"id": "303561c4-182f-4950-ba17-544cb633b2e6",
"name": "付箋9",
"type": "n8n-nodes-base.stickyNote",
"position": [
200,
540
],
"parameters": {
"height": 320,
"content": "### 9. 🗂️ **Re -Format 5**\n**Type:** `code` \n**Description:** Extracts the `serpResults` data from the `keywordDifficulty` API response.\n"
},
"typeVersion": 1
},
{
"id": "29647f1c-1cac-4ccc-bb55-7df969e9d3ed",
"name": "付箋10",
"type": "n8n-nodes-base.stickyNote",
"position": [
580,
560
],
"parameters": {
"height": 280,
"content": "### 10. 🔍 **SERP Result**\n**Type:** `googleSheets` \n**Description:** Appends the extracted SERP analytics data to the **\"Serp Analytics\"** sheet.\n"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"bcc6356f-69b7-48cb-8901-2155a7a354d8": {
"main": [
[
{
"node": "5d57d994-d970-4670-8868-18875f16890d",
"type": "main",
"index": 0
}
]
]
},
"880567fc-0355-4e2d-907b-91138a74600b": {
"main": [
[
{
"node": "aed9c3bf-f81e-423a-a176-ef5a97e9ee05",
"type": "main",
"index": 0
}
]
]
},
"21b7e79e-d94d-4dad-b40f-8c78eadf5958": {
"main": [
[
{
"node": "95fabfa0-c82a-450f-a48e-a3eee77e7c82",
"type": "main",
"index": 0
}
]
]
},
"6744f81f-3a81-4602-b6ce-24a47aefcf0d": {
"main": [
[
{
"node": "c2f0a816-6ba0-48b2-a764-dc19203aa3ed",
"type": "main",
"index": 0
},
{
"node": "5e918cef-3e92-4085-902c-19c1c56e0a4e",
"type": "main",
"index": 0
}
]
]
},
"2b931767-0890-44bd-bd6e-0520d2d30d19": {
"main": [
[
{
"node": "6744f81f-3a81-4602-b6ce-24a47aefcf0d",
"type": "main",
"index": 0
}
]
]
},
"c2f0a816-6ba0-48b2-a764-dc19203aa3ed": {
"main": [
[
{
"node": "bcc6356f-69b7-48cb-8901-2155a7a354d8",
"type": "main",
"index": 0
}
]
]
},
"5e918cef-3e92-4085-902c-19c1c56e0a4e": {
"main": [
[
{
"node": "880567fc-0355-4e2d-907b-91138a74600b",
"type": "main",
"index": 0
},
{
"node": "21b7e79e-d94d-4dad-b40f-8c78eadf5958",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
上級 - 市場調査, マルチモーダルAI
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
RapidAPIとGoogle Sheetsを使ったページSEO分析の自動化と記録
APIキーの利用規約変更に基づくRapidAPIとGoogleスプレッドシートを使用したページSEO分析と記録の自動化
Set
Code
Form Trigger
+
Set
Code
Form Trigger
33 ノードEvoort Solutions
市場調査
RapidAPI を通じて Google Sheets への Semrush による自動バックラinking データ出力
Semrush から自動のにリバースリンクデータをGoogle Sheetsへ出力(RapidAPIを使用)
Code
Form Trigger
Http Request
+
Code
Form Trigger
Http Request
13 ノードEvoort Solutions
市場調査
RapidAPIを使ってYouTubeチャンネル メタデータをGoogle Docsに抽出
RapidAPIを使ってYouTubeチャネルメタデータをGoogle Docsに抽出
Code
Google Docs
Form Trigger
+
Code
Google Docs
Form Trigger
9 ノードEvoort Solutions
市場調査
Job Search Global API と Google Sheets を使って求人検索を自動化
Job Search Global API、Google Sheets を使って 自動化求人検索を行う
If
Set
Code
+
If
Set
Code
15 ノードEvoort Solutions
コンテンツ作成
Dumpling AIを使用してウェブサイトのブログコンテンツをスクレイピングし、Googleシートに保存
Dumpling AIを使用してウェブサイトのブログコンテンツを取得し、Google Sheetsに保存
Set
Code
Form Trigger
+
Set
Code
Form Trigger
11 ノードYang
市場調査
Google Sheetsとメール通知を使用してタイトルの明確さを最適化する
Google Sheetsとメール通知によるタイトルの明確さの最適化
If
Code
Email Send
+
If
Code
Email Send
14 ノードEvoort Solutions
コンテンツ作成