私のワークフロー

上級

これは自動化ワークフローで、27個のノードを含みます。主にSet, Code, Html, Wait, Gmailなどのノードを使用。 LinkedIn、Google Sheets、AI を使って 求人検索とAIを活用した自動採用情報検索、AI提供の求人検索とCVスコアリングの自動化を提供

前提条件
  • Googleアカウント + Gmail API認証情報
  • Google Drive API認証情報
  • ターゲットAPIの認証情報が必要な場合あり
  • Google Sheets API認証情報
  • Google Gemini API Key

カテゴリー

-
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "id": "SrQYoBJKHtuSzi6B",
  "meta": {
    "instanceId": "1da5d9ac3e2974ca203c09fc21d9eb832e61e497fa9e11c9fbcaae0e18a9c185",
    "templateCredsSetupCompleted": true
  },
  "name": "My workflow",
  "tags": [],
  "nodes": [
    {
      "id": "9dd871da-bb3b-4ebe-963b-128fcff34099",
      "name": "ファイルをダウンロード",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        208,
        0
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "url",
          "value": ""
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "AcZcDztmyUtsa3Kc",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "6bdbd596-b061-427a-b97c-e789fe7090a4",
      "name": "ファイルから抽出",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        416,
        0
      ],
      "parameters": {
        "options": {},
        "operation": "pdf"
      },
      "typeVersion": 1
    },
    {
      "id": "484e0f62-0d1a-4637-8b58-4942d6d0a4e0",
      "name": "シート内の行を取得",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        624,
        0
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1m_p1yu6j10cuHK-bImqz86Oraegz5j9ii2u5LJqxg1g/edit#gid=0",
          "cachedResultName": "Filter"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1m_p1yu6j10cuHK-bImqz86Oraegz5j9ii2u5LJqxg1g",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1m_p1yu6j10cuHK-bImqz86Oraegz5j9ii2u5LJqxg1g/edit?usp=drivesdk",
          "cachedResultName": "Job Search N8N"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "oD5JyqmvqMOPNTeR",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "c4bc1e36-3acb-4637-a867-085a3079eb14",
      "name": "LinkedIn検索URL",
      "type": "n8n-nodes-base.code",
      "position": [
        832,
        0
      ],
      "parameters": {
        "jsCode": "let url = \"https://www.linkedin.com/jobs/search/?f_TPR=r86400\"\n\nconst keyword = $input.first().json.Keyword\nconst location = $input.first().json.Location\nconst experienceLevel = $input.first().json['Experience Level']\nconst remote = $input.first().json.Remote\nconst easyApply = $input.first().json['Easy Apply']\n\nif (keyword != \"\") {\n  url += `&keywords=${keyword}`;\n}\n\nif (location != \"\") {\n  url += `&location=${location}`;\n}\n\nif (experienceLevel !== \"\") {\n  // Transform experience levels to LinkedIn codes\n  // Internship -> 1, Entry level -> 2, Associate -> 3\n  // Mid-Senior level -> 4, Director -> 5, Executive -> 6\n  const transformedExperiences = experienceLevel\n    .split(\",\")\n    .map((exp) => {\n      switch (exp.trim()) {\n        case \"Internship\": return \"1\";\n        case \"Entry level\": return \"2\";\n        case \"New Grad\": return \"3\";\n        default: return \"\";\n      }\n    })\n    .filter(Boolean);\n  url += `&f_E=${transformedExperiences.join(\",\")}`;\n}\n\nif (remote.length != \"\") {\n  // Transform remote options to LinkedIn codes\n  // On-Site -> 1, Remote -> 2, Hybrid -> 3\n  const transformedRemote = remote\n    .split(\",\")\n    .map((e) => {\n      switch (e.trim()) {\n        case \"Remote\": return \"2\";\n        case \"Hybrid\": return \"3\";\n        case \"On-Site\": return \"1\";\n        default: return \"\";\n      }\n    })\n    .filter(Boolean);\n  url += `&f_WT=${transformedRemote.join(\",\")}`;\n}\n\nif (easyApply != \"\") {\n  url += \"&f_EA=true\";\n}\n\nreturn {url}\n"
      },
      "typeVersion": 2
    },
    {
      "id": "dc8f887e-81e6-44bf-a356-13f61d6a0388",
      "name": "LinkedInから求人を取得",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1040,
        0
      ],
      "parameters": {
        "url": "={{ $json.url }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "c9e59fa5-49df-47bb-89c0-87ab7845fd2f",
      "name": "HTML",
      "type": "n8n-nodes-base.html",
      "position": [
        1248,
        0
      ],
      "parameters": {
        "options": {},
        "operation": "extractHtmlContent",
        "extractionValues": {
          "values": [
            {
              "key": "jobs",
              "attribute": "href",
              "cssSelector": "ul.jobs-search__results-list li div a[class*=\"base-card\"]",
              "returnArray": true,
              "returnValue": "attribute"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "c2aec608-8302-4bcd-a00b-2e3d293b89bf",
      "name": "分割",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1456,
        0
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "jobs"
      },
      "typeVersion": 1
    },
    {
      "id": "00612b80-a789-4615-9942-e62584e22fdf",
      "name": "項目をループ処理",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        1568,
        816
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "293a9da0-abfd-491c-9ee6-926fb6de30f1",
      "name": "待機",
      "type": "n8n-nodes-base.wait",
      "position": [
        -32,
        208
      ],
      "webhookId": "12409f66-fbe7-48bd-b9d7-68449f197264",
      "parameters": {
        "amount": 2
      },
      "typeVersion": 1.1
    },
    {
      "id": "2f0cb178-8831-458f-9c8c-f9fbbc52abbc",
      "name": "HTTPリクエスト",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        176,
        208
      ],
      "parameters": {
        "url": "={{ $json.jobs }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "33d05837-7b57-4f7d-9aa1-d79fe3e71753",
      "name": "HTML1",
      "type": "n8n-nodes-base.html",
      "position": [
        384,
        208
      ],
      "parameters": {
        "options": {},
        "operation": "extractHtmlContent",
        "extractionValues": {
          "values": [
            {
              "key": "Title",
              "cssSelector": "div h1"
            },
            {
              "key": "Company",
              "cssSelector": "div span a"
            },
            {
              "key": "Location",
              "cssSelector": "div span[class*='topcard__flavor topcard__flavor--bullet']"
            },
            {
              "key": "Description",
              "cssSelector": "div.description__text.description__text--rich"
            },
            {
              "key": "Job ID",
              "attribute": "data-semaphore-content-urn",
              "cssSelector": "a[data-item-type='semaphore']",
              "returnValue": "attribute"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "43feb566-7427-455c-9109-2a6ba56764f7",
      "name": "フィールドを編集",
      "type": "n8n-nodes-base.set",
      "position": [
        592,
        208
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "240418dc-3349-48d5-ba59-3aa590d71950",
              "name": "Description",
              "type": "string",
              "value": "={{ $json.Description.replaceAll(/\\s+/g, \" \")}}"
            },
            {
              "id": "7b24938f-8b47-488d-9f65-54d036dcffd5",
              "name": "Job ID",
              "type": "string",
              "value": "={{ $json['Job ID'].split(\":\").last() }}"
            },
            {
              "id": "d6addada-9e01-464f-a768-c19f6224c491",
              "name": "Apply Link",
              "type": "string",
              "value": "={{ \"https://www.linkedin.com/jobs/view/\"+ $json['Job ID'].split(\":\").last()  }}"
            },
            {
              "id": "21c89d3a-c8b6-44eb-9719-9ae5716a7c76",
              "name": "Title",
              "type": "string",
              "value": "={{ $json.Title }}"
            },
            {
              "id": "da713845-9a81-486e-bff2-1613105e424d",
              "name": "Company",
              "type": "string",
              "value": "={{ $json.Company }}"
            },
            {
              "id": "1a9a31dd-8d51-4f35-b6b6-ca8a348de5d7",
              "name": "Location",
              "type": "string",
              "value": "={{ $json.Location }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "8d9894bd-66fe-4069-aff0-84d351b8b5b4",
      "name": "AIエージェント",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        32,
        464
      ],
      "parameters": {
        "text": "=You are a precise job-matching assistant.\n\nReturn ONE JSON object wrapped in ```json fences, followed by the line END_OF_JSON.\nNo extra prose. No Markdown inside the JSON. No comments.\n\nINPUTS\njob_description: {{ $json.Description }}\nmy_resume: {{ $('Extract from File').item.json.text }}\n\nTASKS\n1) Parse job_description → job_analysis with keys:\n   title (string), company (string), must_have_skills (string[]), nice_to_have_skills (string[]),\n   responsibilities (string[]), years_of_experience (string), education_certifications (string),\n   location_constraints (string), domain_industry_focus (string), tech_stack (string[]), measurable_kpis (string[])\n\n2) Parse my_resume → resume_analysis:\n   core_skills (string[]),\n   tools_tech { programming_languages[], frontend_technologies[], backend_technologies[], databases_devops[] },\n   years_of_experience_key_areas (object of short strings),\n   accomplishments_with_metrics (string[]),\n   education_certs (string[]), domains (string[]), roles_titles (string[]),\n   leadership_collaboration (string[]), location_work_auth (string)\n\n3) Scoring (integer 0–100):\n   - Skills/Tools overlap: 40\n   - Relevant experience & seniority: 25\n   - Responsibilities alignment: 15\n   - Education/Certs fit: 10\n   - Domain/industry fit: 5\n   - Logistics (location/work auth/availability): 5\n   Allow partial credit; deduct up to 10 via red_flags. Clamp to [0,100], integer.\n\n4) Explain the score:\n   For each bucket, provide 1–3 concise evidence bullets. Cite \"JD\" or \"Resume\" and include short quoted fragments (escape quotes).\n\n5) Gaps & Suggestions:\n   List missing/weak requirements with 1–2 concrete upskilling steps per gap.\n\n6) Cover letter:\n   150–220 words (2–4 short paragraphs), tailored to the role/company.\n   Concrete impacts; no greeting/signature. JSON-safe: escape all \" as \\\", use \\n for newlines.\n\nSTRICT CONTENT RULES (to prevent invalid JSON)\n- Do NOT paste raw paragraphs, markdown (**bold**, lists), headings, or multi-line blocks into any array fields.\n- Every array element must be a short phrase (≤ 140 characters), single line, no line breaks, no asterisks, no bullets.\n- If a JD section is long, summarize into short phrases before placing into arrays.\n- Do NOT include unrelated job text inside arrays or objects. Keep each value semantically atomic.\n- Never invent company/title; use \"\" if unknown.\n- No trailing commas anywhere.\n\nSTRICT OUTPUT RULES\n- Output exactly the following schema (keys and types). No extra keys.\n\nSCHEMA\n```json\n{\n  \"job_analysis\": {\n    \"title\": \"\",\n    \"company\": \"\",\n    \"must_have_skills\": [],\n    \"nice_to_have_skills\": [],\n    \"responsibilities\": [],\n    \"years_of_experience\": \"\",\n    \"education_certifications\": \"\",\n    \"location_constraints\": \"\",\n    \"domain_industry_focus\": \"\",\n    \"tech_stack\": [],\n    \"measurable_kpis\": []\n  },\n  \"resume_analysis\": {\n    \"core_skills\": [],\n    \"tools_tech\": {\n      \"programming_languages\": [],\n      \"frontend_technologies\": [],\n      \"backend_technologies\": [],\n      \"databases_devops\": []\n    },\n    \"years_of_experience_key_areas\": {},\n    \"accomplishments_with_metrics\": [],\n    \"education_certs\": [],\n    \"domains\": [],\n    \"roles_titles\": [],\n    \"leadership_collaboration\": [],\n    \"location_work_auth\": \"\"\n  },\n  \"match_score\": 0,\n  \"score_explanation\": [\n    { \"category\": \"Skills/Tools overlap (40 points)\", \"score\": 0, \"evidence\": [] },\n    { \"category\": \"Relevant experience depth & seniority (25 points)\", \"score\": 0, \"evidence\": [] },\n    { \"category\": \"Responsibilities alignment (15 points)\", \"score\": 0, \"evidence\": [] },\n    { \"category\": \"Education/Certs fit (10 points)\", \"score\": 0, \"evidence\": [] },\n    { \"category\": \"Domain/industry fit (5 points)\", \"score\": 0, \"evidence\": [] },\n    { \"category\": \"Logistics (location, work auth, availability) (5 points)\", \"score\": 0, \"evidence\": [] }\n  ],\n  \"red_flags\": [],\n  \"gaps_and_suggestions\": [\n    { \"gap\": \"\", \"suggestion\": \"\" }\n  ],\n  \"cover_letter\": \"\"\n}\n",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 2.2
    },
    {
      "id": "cc137b01-1f25-4ba5-955d-6fb7f947bcd6",
      "name": "Google Geminiチャットモデル",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        32,
        640
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "g6RyTSgLpUyQXe6T",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "4ef714a7-1e5d-4c45-b1fd-d961592ec459",
      "name": "フィールドを編集1",
      "type": "n8n-nodes-base.set",
      "position": [
        432,
        656
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "={{ (() => {\n  // 0) Read model output from AI Agent node\n  const raw = String(($('AI Agent').item.json.output ?? ''));\n\n  // 1) Strip code fences\n  let s = raw\n    .replace(/`{2,3}(?:json)?\\s*/gi, '')\n    .replace(/\\s*`{3}\\s*$/gi, '');\n\n  // 1b) Normalize curly quotes (Gemini sometimes emits them)\n  s = s.replace(/[\\u201C\\u201D]/g, '\"').replace(/\\u2019/g, \"'\");\n\n  // 2) Cut at END_OF_JSON if present\n  const endIdx = s.indexOf('END_OF_JSON');\n  if (endIdx !== -1) s = s.slice(0, endIdx);\n\n  // 3) Extract first complete { ... } by brace counting\n  const start = s.indexOf('{');\n  if (start < 0) return {};\n  let depth = 0, inStr = false, esc = false, end = -1;\n  for (let i = start; i < s.length; i++) {\n    const ch = s[i];\n    if (inStr) {\n      if (esc) { esc = false; }\n      else if (ch === '\\\\') { esc = true; }\n      else if (ch === '\"') { inStr = false; }\n    } else {\n      if (ch === '\"') inStr = true;\n      else if (ch === '{') depth++;\n      else if (ch === '}') { depth--; if (depth === 0) { end = i + 1; break; } }\n    }\n  }\n  if (end < 0) return {};\n\n  const cleaned = s.slice(start, end).trim();\n\n  try {\n    return JSON.parse(cleaned);   // JSON mode expects an OBJECT\n  } catch (e) {\n    // As a last resort, return an empty object to keep the run alive\n    return {};\n  }\n})() }}\n"
      },
      "typeVersion": 3.4
    },
    {
      "id": "b4795633-1f39-4d56-b19d-d2837d987d89",
      "name": "AIエージェント1",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        736,
        656
      ],
      "parameters": {
        "text": "You are a ruthless resume editor. Compare the inputs and output ONLY crisp, point-wise changes to improve job fit.\n\nInputs:\n- job_description: {{ $json.Description }}\n- my_resume: {{ $('Extract from File').item.json.text }}\n\nInstructions:\n- Output a numbered list; highest-impact first.\n- One line per point; <= 14 words.\n- Start each line with a tag: [ADD], [REMOVE], [REWRITE], [ORDER], [QUANTIFY], [KEYWORDS], [FORMAT], [FOCUS].\n- Base every point on gaps vs. the job_description; do not invent experience.\n- Prefer concrete actions: skills to add, bullets to rewrite, sections to reorder/remove.\n- Include one line: 'Missing keywords: term1, term2, ...' (only if any).\n- No intros, explanations, code fences, or extra text - points only.\n\nOutput: points only, exactly as specified above.",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 2.2
    },
    {
      "id": "5e3518b8-e203-45ba-9d02-356edf668c0c",
      "name": "Google Geminiチャットモデル1",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        736,
        816
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "g6RyTSgLpUyQXe6T",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ca1e037d-bb59-455c-8738-f1e1ce89f2b4",
      "name": "シート1に行を追加または更新",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1072,
        656
      ],
      "parameters": {
        "columns": {
          "value": {
            "Link": "={{ $('Edit Fields').item.json['Apply Link'] }}",
            "Score": "={{ $('Edit Fields1').item.json.match_score }}",
            "Title": "={{ $('Edit Fields').item.json.Title }}",
            "Skills": "={{ $('Edit Fields1').item.json.resume_analysis.core_skills }}",
            "Locaton": "={{ $('Edit Fields').item.json.Location }}",
            "Company ": "={{ $('Edit Fields').item.json.Company }}",
            "Cover Letter": "={{ $('Edit Fields1').item.json.cover_letter }}",
            "Improvements": "={{ $json.output }}"
          },
          "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": "Locaton",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Locaton",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Link",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Link",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Score",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Score",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Cover Letter",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Cover Letter",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Skills",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Skills",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Improvements",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Improvements",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Link"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 11035642,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1m_p1yu6j10cuHK-bImqz86Oraegz5j9ii2u5LJqxg1g/edit#gid=11035642",
          "cachedResultName": "Result"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1m_p1yu6j10cuHK-bImqz86Oraegz5j9ii2u5LJqxg1g",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1m_p1yu6j10cuHK-bImqz86Oraegz5j9ii2u5LJqxg1g/edit?usp=drivesdk",
          "cachedResultName": "Job Search N8N"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "oD5JyqmvqMOPNTeR",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "d2b5241e-c511-42c9-8301-e75c1b5c22c9",
      "name": "メッセージを送信",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1984,
        800
      ],
      "webhookId": "f0d6158b-a72b-4e84-8f3e-0e8ecfaeda72",
      "parameters": {
        "sendTo": "<your e-mail address>",
        "message": "Hey, your job search results with resume changes are ready in your sheet for today",
        "options": {},
        "subject": "Job search results",
        "emailType": "text"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "Zd1C7CJsZcTcApAG",
          "name": "Gmail account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "9100d62e-1108-4ba2-b6dd-91576b1c015b",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        -240
      ],
      "parameters": {
        "height": 192,
        "content": "## Add Google Cloud Credentials\n\n1. sign in with google\n2. Upload your resume and change to anyone can view\n3. Paste your link\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ff1c1aad-5ab0-49c3-805a-092e1e371985",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        576,
        -224
      ],
      "parameters": {
        "height": 176,
        "content": "## Add Google Cloud Credentials\n\n1. sign in with google\n2. Prepare your sheet filter\n3. Add your sheet Link"
      },
      "typeVersion": 1
    },
    {
      "id": "9d6df7e1-3a16-483b-add7-9d0e2fc95498",
      "name": "付箋2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1904,
        592
      ],
      "parameters": {
        "content": "## Add Google Cloud Credentials\n\n- sign in with google\n- Enter your e-mail address"
      },
      "typeVersion": 1
    },
    {
      "id": "986e4584-7f86-4a56-97d4-f6a09835808e",
      "name": "付箋3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1008,
        448
      ],
      "parameters": {
        "height": 176,
        "content": "## Add Google Cloud Credentials\n\n1. sign in with google\n2. Select your sheet and sub sheet"
      },
      "typeVersion": 1
    },
    {
      "id": "b4e4313d-e9e1-4e81-a613-de7de233eec1",
      "name": "付箋4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -16,
        784
      ],
      "parameters": {
        "height": 176,
        "content": "## Add Gemini Free tier api key\n\n1. sign in with google\n2. Create API key and project\n3. Add Free Tier key"
      },
      "typeVersion": 1
    },
    {
      "id": "65c1327d-e61b-47ee-bd55-8ddf43c58cd8",
      "name": "付箋5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        640,
        464
      ],
      "parameters": {
        "height": 176,
        "content": "## Add Gemini Free tier api key\n\n1. sign in with google\n2. Create API key and project\n3. Add Free Tier key"
      },
      "typeVersion": 1
    },
    {
      "id": "94653150-71a5-411b-bed3-a0771b9fef44",
      "name": "スケジュールトリガー",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -48,
        0
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 5
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "c28849bf-1393-41d1-88e7-aa2d1c8c3c8c",
      "name": "付箋6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        640,
        -624
      ],
      "parameters": {
        "height": 320,
        "content": "# Job search ultimate workflow - @jugaldb\n\n1. Takes about 1 hour to run\n2. Finds all relevant jobs posted in last one day, runs at 5 AM everyday\n3. Sends you an e-mail whne complete"
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "25e5c7d3-60ea-47bf-b4bc-cb62a22a3ad7",
  "connections": {
    "c9e59fa5-49df-47bb-89c0-87ab7845fd2f": {
      "main": [
        [
          {
            "node": "c2aec608-8302-4bcd-a00b-2e3d293b89bf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "293a9da0-abfd-491c-9ee6-926fb6de30f1": {
      "main": [
        [
          {
            "node": "2f0cb178-8831-458f-9c8c-f9fbbc52abbc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "33d05837-7b57-4f7d-9aa1-d79fe3e71753": {
      "main": [
        [
          {
            "node": "43feb566-7427-455c-9109-2a6ba56764f7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8d9894bd-66fe-4069-aff0-84d351b8b5b4": {
      "main": [
        [
          {
            "node": "4ef714a7-1e5d-4c45-b1fd-d961592ec459",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b4795633-1f39-4d56-b19d-d2837d987d89": {
      "main": [
        [
          {
            "node": "ca1e037d-bb59-455c-8738-f1e1ce89f2b4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c2aec608-8302-4bcd-a00b-2e3d293b89bf": {
      "main": [
        [
          {
            "node": "00612b80-a789-4615-9942-e62584e22fdf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "43feb566-7427-455c-9109-2a6ba56764f7": {
      "main": [
        [
          {
            "node": "8d9894bd-66fe-4069-aff0-84d351b8b5b4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4ef714a7-1e5d-4c45-b1fd-d961592ec459": {
      "main": [
        [
          {
            "node": "b4795633-1f39-4d56-b19d-d2837d987d89",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2f0cb178-8831-458f-9c8c-f9fbbc52abbc": {
      "main": [
        [
          {
            "node": "33d05837-7b57-4f7d-9aa1-d79fe3e71753",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9dd871da-bb3b-4ebe-963b-128fcff34099": {
      "main": [
        [
          {
            "node": "6bdbd596-b061-427a-b97c-e789fe7090a4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "00612b80-a789-4615-9942-e62584e22fdf": {
      "main": [
        [
          {
            "node": "d2b5241e-c511-42c9-8301-e75c1b5c22c9",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "293a9da0-abfd-491c-9ee6-926fb6de30f1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "94653150-71a5-411b-bed3-a0771b9fef44": {
      "main": [
        [
          {
            "node": "9dd871da-bb3b-4ebe-963b-128fcff34099",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6bdbd596-b061-427a-b97c-e789fe7090a4": {
      "main": [
        [
          {
            "node": "484e0f62-0d1a-4637-8b58-4942d6d0a4e0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "484e0f62-0d1a-4637-8b58-4942d6d0a4e0": {
      "main": [
        [
          {
            "node": "c4bc1e36-3acb-4637-a867-085a3079eb14",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c4bc1e36-3acb-4637-a867-085a3079eb14": {
      "main": [
        [
          {
            "node": "dc8f887e-81e6-44bf-a356-13f61d6a0388",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "dc8f887e-81e6-44bf-a356-13f61d6a0388": {
      "main": [
        [
          {
            "node": "c9e59fa5-49df-47bb-89c0-87ab7845fd2f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cc137b01-1f25-4ba5-955d-6fb7f947bcd6": {
      "ai_languageModel": [
        [
          {
            "node": "8d9894bd-66fe-4069-aff0-84d351b8b5b4",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "5e3518b8-e203-45ba-9d02-356edf668c0c": {
      "ai_languageModel": [
        [
          {
            "node": "b4795633-1f39-4d56-b19d-d2837d987d89",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "ca1e037d-bb59-455c-8738-f1e1ce89f2b4": {
      "main": [
        [
          {
            "node": "00612b80-a789-4615-9942-e62584e22fdf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

このワークフローの使い方は?

上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。

このワークフローはどんな場面に適していますか?

上級

有料ですか?

このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。

ワークフロー情報
難易度
上級
ノード数27
カテゴリー-
ノードタイプ15
難易度説明

上級者向け、16ノード以上の複雑なワークフロー

作成者

Master’s in US 🇺🇸 | Travel | Jobs SDE @amazon👨‍💻 MSCS @illinois1867 🚀 for FREE, ask me how Yapping about education abroad! Free Resources👇🏻

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34