RapidAPI와 Google Sheets 보고서를 사용한 경쟁사 키워드 분석
중급
이것은Market Research, Multimodal AI분야의자동화 워크플로우로, 9개의 노드를 포함합니다.주로 Code, FormTrigger, HttpRequest, GoogleSheets 등의 노드를 사용하며. RapidAPI와 Google Sheets 보고서를 사용한 경쟁사 키워드 분석
사전 요구사항
- •대상 API의 인증 정보가 필요할 수 있음
- •Google Sheets API 인증 정보
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"meta": {
"instanceId": "60c025075753afcab9f803964b4caaca9402f435deb4efafbb8e3b93b54d8752",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "6df0fc87-64cd-4ed2-8c13-94a26e54f0f4",
"name": "양식 제출 시",
"type": "n8n-nodes-base.formTrigger",
"position": [
0,
0
],
"webhookId": "62964f32-f17c-4b83-9836-a1736de829fd",
"parameters": {
"options": {},
"formTitle": "Competitor Keyword Analysis",
"formFields": {
"values": [
{
"fieldLabel": "website",
"requiredField": true
},
{
"fieldLabel": "country",
"placeholder": "in",
"requiredField": true
}
]
},
"formDescription": "Competitor Keyword Analysis"
},
"typeVersion": 2.2
},
{
"id": "1a919bd5-3046-4e85-abda-603cd9e46a1a",
"name": "Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
800,
0
],
"parameters": {
"columns": {
"value": {},
"schema": [
{
"id": "competition",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "cpc",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "cpc",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "numberOfResults",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "numberOfResults",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "position",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "position",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "positionDifference",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "positionDifference",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "previousPosition",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "previousPosition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "searchVolume",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "searchVolume",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "trafficPercent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "trafficPercent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "trafficCostPercent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "trafficCostPercent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "trends",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "trends",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "keywordDifficulty",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "keywordDifficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [
"row_number"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": ""
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "Rt0RWApx8PL9t0RF",
"name": "Google Docs account"
}
},
"typeVersion": 4.6
},
{
"id": "e66cb1b0-82db-4c3e-9d88-7c8d3d164822",
"name": "경쟁사 키워드 분석",
"type": "n8n-nodes-base.httpRequest",
"position": [
260,
0
],
"parameters": {
"url": "https://competitor-keyword-analysis.p.rapidapi.com/web-keyoword-tool.php",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "multipart-form-data",
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "website",
"value": "={{ $json.website }}"
},
{
"name": "country",
"value": "={{ $json.country }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "x-rapidapi-host",
"value": "competitor-keyword-analysis.p.rapidapi.com"
},
{
"name": "x-rapidapi-key",
"value": "your key"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "53499d16-8b32-49ce-97e5-96260568234a",
"name": "코드 재포맷",
"type": "n8n-nodes-base.code",
"position": [
540,
0
],
"parameters": {
"jsCode": "return $input.first().json.data.semrushAPI.domainOrganicSearchKeywords;"
},
"typeVersion": 2
},
{
"id": "d3f84fa1-a176-442c-a761-6c1c1f446362",
"name": "스티커 메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-80,
-200
],
"parameters": {
"height": 400,
"content": " **📝 On form submission (`formTrigger`)** \n Captures user input (`website` and `country`) when the form is submitted to initiate the workflow.\n"
},
"typeVersion": 1
},
{
"id": "28e57f59-de22-4202-93ff-1e016a959fb5",
"name": "스티커 메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1220,
-400
],
"parameters": {
"width": 1000,
"height": 1160,
"content": "# 🔍 Competitor Keyword Analysis & Reporting Workflow\n\n## 📄 Description\nThis workflow automates competitor keyword analysis by capturing user input via a form, querying a keyword analysis API, transforming the returned data, and saving it to Google Sheets for future SEO tracking and decision-making.\n\n---\n\n## 🧩 Node-by-Node Breakdown\n\n1. **📝 On form submission (`formTrigger`)** \n Captures user input (`website` and `country`) when the form is submitted to initiate the workflow.\n\n2. **🌐 Competitor Keyword Analysis (`httpRequest`)** \n Sends a POST request to the Competitor Keyword Analysis API using the submitted website and country to fetch SEO keyword data.\n\n3. **🔄 Reformat Code (`code`)** \n Extracts the relevant `domainOrganicSearchKeywords` data from the API response for easier processing and storage.\n\n4. **📊 Google Sheets (`googleSheets`)** \n Appends the formatted keyword data into a specified Google Sheet for tracking, reporting, and analysis.\n\n---\n\n## 📌 Key Features\n\n- User-friendly form-based data input \n- Seamless API integration via RapidAPI \n- Data transformation using JavaScript \n- Google Sheets logging for long-term analysis \n\n---\n\n## 📁 Output Example (Google Sheets)\n\n| keyword | searchVolume | cpc | competition | position | ... |\n|---------------|--------------|-----|-------------|----------|-----|\n| example term | 9900 | 2.3 | 0.87 | 5 | ... |\n\n---\n\n## ✅ Use Case\nIdeal for marketers, SEO analysts, and agencies who want to track competitor keyword data efficiently and in real time without manual data entry.\n\n\n"
},
"typeVersion": 1
},
{
"id": "ab39b34c-4e33-4325-9641-1e9221936eed",
"name": "스티커 메모2",
"type": "n8n-nodes-base.stickyNote",
"position": [
200,
-200
],
"parameters": {
"height": 400,
"content": "**🌐 Competitor Keyword Analysis (`httpRequest`)** \n Sends a POST request to the Competitor Keyword Analysis API using the submitted website and country to fetch SEO keyword data.\n"
},
"typeVersion": 1
},
{
"id": "3b80d196-f33a-4df3-ab7c-e0a78cae876d",
"name": "스티커 메모3",
"type": "n8n-nodes-base.stickyNote",
"position": [
460,
-200
],
"parameters": {
"height": 400,
"content": "**🔄 Reformat Code (`code`)** \n Extracts the relevant `domainOrganicSearchKeywords` data from the API response for easier processing and storage.\n"
},
"typeVersion": 1
},
{
"id": "d6127aac-de48-4427-8881-4d493c61b156",
"name": "스티커 메모4",
"type": "n8n-nodes-base.stickyNote",
"position": [
720,
-200
],
"parameters": {
"height": 400,
"content": "**📊 Google Sheets (`googleSheets`)** \n Appends the formatted keyword data into a specified Google Sheet for tracking, reporting, and analysis.\n"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"53499d16-8b32-49ce-97e5-96260568234a": {
"main": [
[
{
"node": "1a919bd5-3046-4e85-abda-603cd9e46a1a",
"type": "main",
"index": 0
}
]
]
},
"6df0fc87-64cd-4ed2-8c13-94a26e54f0f4": {
"main": [
[
{
"node": "e66cb1b0-82db-4c3e-9d88-7c8d3d164822",
"type": "main",
"index": 0
}
]
]
},
"e66cb1b0-82db-4c3e-9d88-7c8d3d164822": {
"main": [
[
{
"node": "53499d16-8b32-49ce-97e5-96260568234a",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
중급 - 시장 조사, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
RapidAPI 및 Google Sheets를 사용한 자동화된 페이지 SEO 분석 및 기록
RapidAPI 및 Google Sheets를 사용한 자동화된 페이지 SEO 분석 및 기록
Set
Code
Form Trigger
+
Set
Code
Form Trigger
33 노드Evoort Solutions
시장 조사
Semrush 백링크 데이터를 Google Sheets로 자동 내보내기(RapidAPI 통해)
RapidAPI를 통한 Semrush 백링크 데이터 Google Sheets 자동 내보내기
Code
Form Trigger
Http Request
+
Code
Form Trigger
Http Request
13 노드Evoort Solutions
시장 조사
YouTube 채널 메타데이터를 Google Docs에 RapidAPI로 추출
RapidAPI를 사용하여 YouTube 채널 메타데이터를 Google Docs에 추출
Code
Google Docs
Form Trigger
+
Code
Google Docs
Form Trigger
9 노드Evoort Solutions
시장 조사
Google Sheets와 이메일 알림을 사용하여 제목 명확성을 최적화
Google Sheets와 이메일 알림을 사용하여 제목 명확성을 최적화하기
If
Code
Email Send
+
If
Code
Email Send
14 노드Evoort Solutions
콘텐츠 제작
랜딩 페이지 분석기 AI를 사용한 웹페이지 분석 및 Google Docs 보고서 생성
랜딩 페이지 분석기 AI를 사용하여 웹페이지 분석 및 Google Docs 보고서 생성
Code
Google Docs
Form Trigger
+
Code
Google Docs
Form Trigger
9 노드Evoort Solutions
AI 요약
최고의 백링크 체커 API를 사용한 웹사이트 백링크 분석 및 Google Sheets에 기록
최고의 백링크 검사기 API를 사용하여 웹사이트 백링크 분석 및 Google Sheets에 기록
Code
Form Trigger
Http Request
+
Code
Form Trigger
Http Request
13 노드Sk developer
시장 조사