07 - 採用スクリーニングエンジンの自動化
中級
これはHR分野の自動化ワークフローで、10個のノードを含みます。主にCode, Filter, HttpRequest, GoogleSheets, ScheduleTriggerなどのノードを使用。 JSearch API および Google Sheets を使った求人情報検索・フィルタリングの自動化
前提条件
- •ターゲットAPIの認証情報が必要な場合あり
- •Google Sheets API認証情報
カテゴリー
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "49jPs7OkPU0PqODZ",
"meta": {
"instanceId": "c91c5b6efe2709e07c37996245857ac5d863d575d07e0072127351337c204c40",
"templateCredsSetupCompleted": true
},
"name": "07 - Automated Job Curation Engine",
"tags": [],
"nodes": [
{
"id": "c4d4a93c-2aca-4090-88b7-3b8e75ed7984",
"name": "⏰ スケジュール: 毎日トリガー",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-340,
440
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 9
}
]
}
},
"typeVersion": 1.1
},
{
"id": "32968ac3-397b-419c-a3f4-fd8192030515",
"name": "📄 スプレッドシートから保留中の職種を読み取る",
"type": "n8n-nodes-base.googleSheets",
"position": [
-120,
440
],
"parameters": {
"options": {
"returnFirstMatch": true
},
"filtersUI": {
"values": [
{
"lookupValue": "Pending",
"lookupColumn": "Status"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/{{Your_Sheet_ID}}/edit#gid=0",
"cachedResultName": "Your_Sheet_No"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/{{Your_Sheet_ID}}/edit?usp=drivesdk",
"cachedResultName": "Job Scraper"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "LJQH5glroAM1SiFe",
"name": "Google Sheets account - (DEV)"
}
},
"typeVersion": 4.6
},
{
"id": "f5f29814-a6b2-4178-a84b-9646130340d8",
"name": "🌐 JSearch API経由で求人を検索",
"type": "n8n-nodes-base.httpRequest",
"position": [
100,
440
],
"parameters": {
"url": "https://jsearch.p.rapidapi.com/search",
"options": {},
"sendQuery": true,
"sendHeaders": true,
"queryParameters": {
"parameters": [
{
"name": "query",
"value": "={{ $json.Position + ' in ' + $json.Location }}"
},
{
"name": "page",
"value": "1"
},
{
"name": "num_pages",
"value": "1"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "X-RapidAPI-Key",
"value": "YOUR_RAPIDAPI_KEY"
},
{
"name": "X-RapidAPI-Host",
"value": "jsearch.p.rapidapi.com"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "cfd205db-f9b1-4906-8b42-3529a7d7bffe",
"name": "🧠 APIレスポンスから求人データを抽出",
"type": "n8n-nodes-base.code",
"position": [
320,
440
],
"parameters": {
"jsCode": "const allItems = [];\n\nfor (const item of items) {\n const jobs = item.json.data || [];\n for (const job of jobs) {\n allItems.push({\n json: {\n title: job.job_title,\n company: job.employer_name,\n location: `${job.job_city}, ${job.job_country}`,\n apply_link: job.job_apply_link,\n is_remote: job.job_is_remote,\n posted_date: job.job_posted_at_datetime_utc,\n }\n });\n }\n}\n\nreturn allItems;"
},
"typeVersion": 2
},
{
"id": "a54cfdfd-b0f9-4027-9309-3aae34ff3564",
"name": "🔍 有効な求人情報を選別",
"type": "n8n-nodes-base.filter",
"position": [
540,
440
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "579057db-1ec8-4a3b-8dca-7169d9699521",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.title }}",
"rightValue": "="
}
]
}
},
"typeVersion": 2.2
},
{
"id": "bdd89987-6256-408b-8bd5-0cd0154dd300",
"name": "📊 求人情報を出力用シートに書き込む",
"type": "n8n-nodes-base.googleSheets",
"position": [
760,
440
],
"parameters": {
"columns": {
"value": {
"Title": "={{ $json.title }}",
"Company": "={{ $json.company }}",
"Location": "={{ $json.location }}",
"Is Remote": "={{ $json.is_remote }}",
"Posted On": "={{ $json.posted_date }}",
"Apply Link": "={{ $json.apply_link }}"
},
"schema": [
{
"id": "Title",
"type": "string",
"display": true,
"required": false,
"displayName": "Title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Company",
"type": "string",
"display": true,
"required": false,
"displayName": "Company",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Location",
"type": "string",
"display": true,
"required": false,
"displayName": "Location",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Apply Link",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Apply Link",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Is Remote",
"type": "string",
"display": true,
"required": false,
"displayName": "Is Remote",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Posted On",
"type": "string",
"display": true,
"required": false,
"displayName": "Posted On",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Apply Link"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/{{Your_Sheet_ID}}/edit#gid=0",
"cachedResultName": "Your_Sheet_No"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "Your_Sheet_ID",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/{{Your_Sheet_ID}}/edit?usp=drivesdk",
"cachedResultName": "Job Listing"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "LJQH5glroAM1SiFe",
"name": "Google Sheets account - (DEV)"
}
},
"typeVersion": 4.6
},
{
"id": "b834f983-9319-4c96-bf9f-7adbee871647",
"name": "✅ ソースシートで求人をスクレイピング済みとしてマーク",
"type": "n8n-nodes-base.googleSheets",
"position": [
980,
440
],
"parameters": {
"columns": {
"value": {
"Status": "Scraped",
"row_number": "={{ $('📄 Read Pending Job Role from Sheet').item.json.row_number }}"
},
"schema": [
{
"id": "Position",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Position",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Location",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Location",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Status",
"type": "string",
"display": true,
"required": false,
"displayName": "Status",
"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/{{Your_Sheet_ID}}/edit#gid=0",
"cachedResultName": "Your_Sheet_No"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/{{Your_Sheet_ID}}/edit?usp=drivesdk",
"cachedResultName": "Job Scraper"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "LJQH5glroAM1SiFe",
"name": "Google Sheets account - (DEV)"
}
},
"executeOnce": true,
"typeVersion": 4.6
},
{
"id": "b9c7a999-6c09-48e5-aea8-b5a14e30ed51",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-380,
200
],
"parameters": {
"width": 420,
"height": 520,
"content": "## Trigger & Input\n\n• Triggers the workflow on a defined hourly interval.\n• Fetches a single row from the \"Job Scraper\" sheet where Status = \"Pending\".\n• This row includes 'Position' and 'Location' values for the job search.\n"
},
"typeVersion": 1
},
{
"id": "c987a1d7-03a7-40b1-99d3-57d9049b3c32",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
80,
200
],
"parameters": {
"color": 3,
"width": 620,
"height": 520,
"content": "## Job Search & Processing\n\n• Sends query (Position + Location) to the JSearch API.\n• Parses the API response and extracts individual job listings.\n• Filters out empty or invalid results to ensure clean output.\n"
},
"typeVersion": 1
},
{
"id": "8c5c5acc-6b1b-4ece-b4c2-af47bda1ecd2",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
720,
200
],
"parameters": {
"color": 4,
"width": 460,
"height": 520,
"content": "## Output & Status Update\n\n• Writes valid jobs to the \"Job Listing\" sheet with fields like title, location, company, etc.\n• Marks the original row in the source sheet as \"Scraped\" using the row number for tracking.\n"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "5e71e30c-da84-4500-bea9-ce72b5596424",
"connections": {
"a54cfdfd-b0f9-4027-9309-3aae34ff3564": {
"main": [
[
{
"node": "bdd89987-6256-408b-8bd5-0cd0154dd300",
"type": "main",
"index": 0
}
]
]
},
"c4d4a93c-2aca-4090-88b7-3b8e75ed7984": {
"main": [
[
{
"node": "32968ac3-397b-419c-a3f4-fd8192030515",
"type": "main",
"index": 0
}
]
]
},
"bdd89987-6256-408b-8bd5-0cd0154dd300": {
"main": [
[
{
"node": "b834f983-9319-4c96-bf9f-7adbee871647",
"type": "main",
"index": 0
}
]
]
},
"f5f29814-a6b2-4178-a84b-9646130340d8": {
"main": [
[
{
"node": "cfd205db-f9b1-4906-8b42-3529a7d7bffe",
"type": "main",
"index": 0
}
]
]
},
"32968ac3-397b-419c-a3f4-fd8192030515": {
"main": [
[
{
"node": "f5f29814-a6b2-4178-a84b-9646130340d8",
"type": "main",
"index": 0
}
]
]
},
"cfd205db-f9b1-4906-8b42-3529a7d7bffe": {
"main": [
[
{
"node": "a54cfdfd-b0f9-4027-9309-3aae34ff3564",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 人事
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
28 - 資金調達インサイトパイプライン
Crunchbase、Google Sheets、Airtableを使ってファイナンスインサイトを自動化
Code
Filter
Airtable
+
Code
Filter
Airtable
9 ノードAvkash Kakdiya
市場調査
AI 製品画像ジェネレーター - 公開テンプレート
OpenAI・Gemini・Google Workspace を使用した自動製品広告画像の作成
Code
Google Drive
Http Request
+
Code
Google Drive
Http Request
15 ノードAvkash Kakdiya
コンテンツ作成
クールドル仕様での取引成立〜クローズワークフロー
GmailフィードバックとSlack通知に基づくHubSpotクールリード取引の自動クローズ
Code
Gmail
Slack
+
Code
Gmail
Slack
15 ノードAvkash Kakdiya
コンテンツ作成
08 - AI駆動型連絡先スマート解析
GPT-4o-mini を使用して Google スプレッドシート、Airtable、HubSpot で連絡先情報を分類し、豊富にする
Code
Filter
Hubspot
+
Code
Filter
Hubspot
15 ノードAvkash Kakdiya
リード獲得
10 - ビジネスマップトラッカー
SerpAPI、Google Table、Airtableを使用した毎日の競合調査の自動化
If
Code
Airtable
+
If
Code
Airtable
15 ノードAvkash Kakdiya
市場調査
Googleスheetsからの仕事の公開の期限切れチェックと再通知のためにHTTP Last-Modifiedを使用
Google Sheets、HTTP チェック、Gmail を使った求人情報掲載期限の自動提醒
If
Set
Code
+
If
Set
Code
19 ノードWeblineIndia
人事
ワークフロー情報
難易度
中級
ノード数10
カテゴリー1
ノードタイプ6
作成者
Avkash Kakdiya
@itechnotion🚀 Founder of iTechNotion — we build custom AI-powered automation workflows for startups, agencies, and founders. 💡 Specializing in agentic AI systems, content automation, sales funnels, and digital workers. 🔧 14+ years in tech | Building scalable no-code/low-code solutions using n8n, OpenAI, and other API-first tools. 📬 Let’s automate what slows you down.
外部リンク
n8n.ioで表示 →
このワークフローを共有