This workflow follows the Form Trigger → Google Sheets recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"nodes": [
{
"id": "bee233ee-7212-4fbd-b151-0bb49919ca42",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
0,
280
],
"parameters": {
"color": 4,
"width": 1289,
"height": 4398,
"content": "LinkedIn \uc791\uc5c5 \ub370\uc774\ud130 \uc2a4\ud06c\ub798\ud37c\ub97c Google Sheets\ub85c\n\nLinkedIn\uc5d0\uc11c Bright Data\ub97c \ud1b5\ud574 \uc2e4\uc2dc\uac04 \uc791\uc5c5 \uac8c\uc2dc\ubb3c\uc744 \uc2a4\ud06c\ub798\ud551\ud558\uace0, \uc774\ub97c \uc815\ub9ac\ud55c \ud6c4 Google Sheets\ub85c \ubcf4\ub0b4\uae30. \uc0ac\uc6a9 \ubaa9\uc801:\n\u2705 \uc791\uc5c5 \uc218\uc0c9 \u2014 \uc2e0\uc120\ud558\uace0 \ud544\ud130\ub9c1\ub41c \uc5ed\ud560\n\u2705 \ud310\ub9e4 \uc7a0\uc7ac \uace0\uac1d \ud0d0\uc0c9 \u2014 \ucc44\uc6a9 \uc911\uc778 \ud68c\uc0ac \ucc3e\uae30 (\uc989, \uc131\uc7a5 \uc911\uc778 \ud68c\uc0ac)\n\u2699\ufe0f \uc0ac\uc6a9\ub41c \ub3c4\uad6c\nn8n \ub178\ub4dc: Form \u2192 HTTP Request \u2192 Wait \u2192 If \u2192 Code \u2192 Google Sheets\n\uc678\ubd80 \ub3c4\uad6c:\n\nBright Data \u2013 \ub370\uc774\ud130\uc14b API\nGoogle Sheets \u2013 \ud15c\ud50c\ub9bf \ubcf5\uc0ac\n\n\ud83d\udd11 \uc124\uc815 \u2013 \ud544\uc694\ud55c \uc790\uaca9 \uc99d\uba85\n\nBright Data API \ud0a4 \u2192 HTTP \ud5e4\ub354\uc5d0 \ucd94\uac00: Authorization: Bearer YOUR_KEY\nGoogle Sheets OAuth2 \u2192 n8n\uc5d0\uc11c \uacc4\uc815 \uc5f0\uacb0\n\n\ud83d\udcdd \uc785\ub825 \ud3fc \u2013 \ud544\ub4dc\n\uc2a4\ud06c\ub798\ud551\ud560 \uc791\uc5c5 \ub370\uc774\ud130\ub97c \uc815\uc758\ud558\ub294 \ub370 \uc0ac\uc6a9.\n\ud544\ub4dc\uc124\uba85\uc608\uc2dcLocation\ub3c4\uc2dc/\uc9c0\uc5edNew York, BerlinKeyword\uac80\uc0c9\ud560 \uc5ed\ud560CMO, Data AnalystCountry2\uc790\ub9ac ISO \ucf54\ub4dcUS, UK, DETime Range\uc791\uc5c5\uc758 \ucd5c\uadfc\uc131\"Past 24 hours\" \ub610\ub294 \"Last 7 days\" (\uad8c\uc7a5)Job Type\ud480\ud0c0\uc784 / \ud30c\ud2b8\ud0c0\uc784 / \uacc4\uc57d(\uc120\ud0dd\uc0ac\ud56d)Experience\uacbd\ub825 \ub2e8\uacc4Entry, Mid, Senior(\uc120\ud0dd\uc0ac\ud56d)Remote\uc6d0\uaca9 \uce5c\ud654\uc801 \uc5ed\ud560\ub85c \ud544\ud130\ub9c1(\uc120\ud0dd\uc0ac\ud56d)Company\ud2b9\uc815 \uace0\uc6a9\uc8fc\ub85c \ud544\ud130\ub9c1(\uc120\ud0dd\uc0ac\ud56d)\n\ud83d\ude80 \uc6cc\ud06c\ud50c\ub85c \ub2e8\uacc4\n\n\uc0ac\uc6a9\uc790\uac00 \uc785\ub825 \ud3fc\uc744 \uc791\uc131\nBright Data \ub370\uc774\ud130\uc14b API\ub97c \ud1b5\ud574 \ud2b8\ub9ac\uac70 \uc2a4\ub0c5\uc0f7\nWait \ub178\ub4dc + \ud3f4\ub9c1\uc774 \ub370\uc774\ud130 \uc900\ube44 \uc5ec\ubd80 \ud655\uc778 (~1\u20133\ubd84)\n\uc815\ub9ac \ub2e8\uacc4:\n\n\uc911\ucca9 \ud544\ub4dc(\uc791\uc5c5_\ud3ec\uc2a4\ud130, \uae30\ubcf8_\uae09\uc5ec \ub4f1)\ub97c \ud3c9\ud0c4\ud654\n\uc791\uc5c5 \uc124\uba85\uc5d0\uc11c HTML \uc81c\uac70\n\n\nGoogle \uc2dc\ud2b8\ub85c \ubcf4\ub0b4\uae30\n\n\uc2dc\ud2b8\ub294 \ubbf8\ub9ac \uc5f0\uacb0\ub418\uc5b4 \uc788\uc73c\uba70, \uc791\uc5c5 1\uac1c\ub2f9 \ud589 1\uac1c\n\uc608\uc2dc \uc5f4: job_title, company_name, location, salary_min, apply_link, job_description_plain\n\n\n\ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud558\uc138\uc694\n\n\uc791\uc5c5 \uc218\uc0c9\uc790 \u2192 \ube60\ub974\uac8c \uc9c0\uc6d0\n\uc601\uc5c5\uc778 \u2192 \uad6c\ub9e4\uc790\ub97c \uc2dd\ubcc4\ud558\uace0 \ub3c4\uc6c0 \uc81c\uacf5\n\n\n\n\ud83d\udca1 \ud504\ub85c \ud301\n\n\ub354 \uc2e0\uc120\ud55c \uacb0\uacfc\ub97c \uc704\ud574 \"Past 24 hours\" \ub610\ub294 \"Last 7 days\" \uc0ac\uc6a9\n\ud544\ud130\ub97c \ube44\uc6cc\ub450\uba74 Bright Data\uac00 \ub354 \ub113\uc740 \uacb0\uacfc\ub97c \ubc18\ud658\n\uc815\ub9ac\ub41c \ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud558\uc5ec:\n\n\ucf5c\ub4dc \uc774\uba54\uc77c \uac1c\uc778\ud654\nLinkedIn \uc544\uc6c3\ub9ac\uce58\nICP \uae30\ubc18 \ub9ac\ub4dc \ubaa9\ub85d \uad6c\ucd95\n\n\n\n\ud83e\uddea \uc608\uc2dc API \ubcf8\ubb38\njson[ \n { \n \"location\": \"New York\", \n \"keyword\": \"Marketing Manager\", \n \"country\": \"US\", \n \"time_range\": \"Past 24 hours\", \n \"job_type\": \"Part-time\", \n \"experience_level\": \"\", \n \"remote\": \"\", \n \"company\": \"\" \n } \n]\n\ud83d\udcc4 \ud15c\ud50c\ub9bf \ubc0f \ub9ac\uc18c\uc2a4\n\n\ud83d\udccb Google \uc2dc\ud2b8 \ud15c\ud50c\ub9bf (\ubcf5\uc0ac\ud558\uae30)\n\ud83d\udcd8 Bright Data API \ucc38\uc870\n\n\ud83d\udee0\ufe0f \ucee4\uc2a4\ud130\ub9c8\uc774\uc988\ud558\uae30\n\nHTTP \ubcf8\ubb38\uc5d0 \ud544\ud130 \ucd94\uac00 (remote, experience_level \ub4f1)\nBright Data\uac00 \ub290\ub9b4 \uacbd\uc6b0 \ud3f4\ub9c1 \uac04\uaca9 \ubcc0\uacbd\n\ubaa9\ub85d\uc744 \uc810\uc218\ud654/\uc6b0\uc120\uc21c\uc704\ud654\ud558\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ub85c\uc9c1 \ucd94\uac00\n\ud544\ud130\ub9c1\ub41c \ubaa9\ub85d\uc744 CRM, Slack \ub4f1\uc73c\ub85c \ubcf4\ub0b4\uae30\n\n\uc774\uac83\uc740 \ucc44\uc6a9 \uc2e0\ud638\uc758 \uc2e4\uc2dc\uac04 \uc2a4\ud2b8\ub9bc\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4 \u2014 \uc791\uc5c5\uc744 \ucc3e\uac70\ub098 \uc11c\ube44\uc2a4\ub97c \uc81c\uc548\ud558\ub294 \uacbd\uc6b0. \ud558\ub098\uc758 \ud3fc. \ud558\ub098\uc758 \ud074\ub9ad. \uc644\uc804\ud788 \uc790\ub3d9\ud654."
},
"typeVersion": 1
},
{
"id": "0fa9d0fe-b3ba-48be-99b9-2bc3aeb18b43",
"name": "Sticky Note9",
"type": "n8n-nodes-base.stickyNote",
"position": [
0,
-60
],
"parameters": {
"color": 4,
"width": 1300,
"height": 320,
"content": "======================================= \n \uc6cc\ud06c\ud50c\ub85c\uc6b0 \uc9c0\uc6d0 \n======================================= \n\uc9c8\ubb38\uc774\ub098 \uc9c0\uc6d0\uc774 \ud544\uc694\ud558\uc2dc\uba74, \ub2e4\uc74c\uc73c\ub85c \uc5f0\ub77d\ud574\uc8fc\uc138\uc694: \n Yaron@nofluff.online \n \n\uc5ec\uae30\uc5d0\uc11c \ub354 \ub9ce\uc740 \ud301\uacfc \ud29c\ud1a0\ub9ac\uc5bc\uc744 \ud0d0\uc0c9\ud558\uc138\uc694: \n - YouTube: https://www.youtube.com/@YaronBeen/videos \n - LinkedIn: https://www.linkedin.com/in/yaronbeen/ \n======================================="
},
"typeVersion": 1
},
{
"id": "33cb416e-a7ff-4b55-9701-9b9e95d76f12",
"name": "Snapshot Progress",
"type": "n8n-nodes-base.httpRequest",
"position": [
2840,
360
],
"parameters": {
"url": "=https://api.brightdata.com/datasets/v3/progress/{{ $('HTTP Request- Post API call to Bright Data').item.json.snapshot_id }}",
"options": {},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer <YOUR_BRIGHT_DATA_API_KEY>"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "6b8c9405-8f8c-4a24-85ca-343d33e06141",
"name": "Sticky Note10",
"type": "n8n-nodes-base.stickyNote",
"position": [
3680,
140
],
"parameters": {
"width": 195,
"height": 646,
"content": "\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc5d0\uc11c \uacb0\uacfc\ub97c \uc800\uc7a5\ud558\uae30 \uc704\ud574 Google Sheets\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4.\n\n\ub354 \ube60\ub974\uac8c \uc2dc\uc791\ud558\uae30 \uc704\ud574 \ub0b4 \ud15c\ud50c\ub9bf\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:\n\n1. [\ud15c\ud50c\ub9bf\uc744 \uac00\uc838\uc624\uae30 \uc704\ud574 \uc774 \ub9c1\ud06c\ub97c \ud074\ub9ad\ud558\uc138\uc694](https://docs.google.com/spreadsheets/d/1_jbr5zBllTy_pGbogfGSvyv1_0a77I8tU-Ai7BjTAw4/edit?usp=sharing)\n2. Sheets\uc758 \ubcf5\uc0ac\ubcf8\uc744 \ub9cc\ub4dc\uc138\uc694\n3. \uc774 \ub178\ub4dc\uc5d0 URL\uc744 \ucd94\uac00\ud558\uc138\uc694"
},
"typeVersion": 1
},
{
"id": "3d3cd92a-9ea7-4a4f-a9b5-aae689f719e5",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
1320,
-60
],
"parameters": {
"width": 480,
"height": 2240,
"content": "# \ud83d\udd0d LinkedIn Jobs API \u2013 \ub9e4\uac1c\ubcc0\uc218 \uac00\uc774\ub4dc\n\n\uc774 \uac1d\uccb4\ub97c \uc0ac\uc6a9\ud558\uc5ec LinkedIn \uad6c\uc778 \ubaa9\ub85d\uc744 \uc870\ud68c\ud558\uc138\uc694. \n\uac01 \ud544\ub4dc\ub97c \ud1b5\ud574 \ub2e4\uc591\ud55c \uae30\uc900\uc5d0 \ub530\ub77c \uacb0\uacfc\ub97c \ud544\ud130\ub9c1\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n```json\n{\n \"location\": \"{{ $json.Location }}\",\n \"keyword\": \"{{ $json.Keyword }}\",\n \"country\": \"{{ $json.Country }}\",\n \"time_range\": \"\uc9c0\ub09c 24\uc2dc\uac04\",\n \"job_type\": \"\uc544\ub974\ubc14\uc774\ud2b8\",\n \"experience_level\": \"\",\n \"remote\": \"\",\n \"company\": \"\"\n}\n```\n\n## \ud83e\uddfe \ud544\ub4dc \uc124\uba85 \ubc0f \uc720\ud6a8 \uc635\uc158\n\n### \ud83d\uddfa\ufe0f location\n\uad6c\uc778 \uc704\uce58\uc758 \ub3c4\uc2dc \ub610\ub294 \uc9c0\uc5ed.\n\ub3c4\uc2dc \ub610\ub294 \uc9c0\uc5ed \uc774\ub984\uc744 \uc0ac\uc6a9\ud558\uc138\uc694.\n\u2705 \uc608\uc2dc: \"Berlin\", \"New York\"\n\n### \ud83e\udde0 keyword\n\uad6c\uc9c1 \uc81c\ubaa9 \ub610\ub294 \uac80\uc0c9 \ud0a4\uc6cc\ub4dc.\n\uc5ed\ud560 \uc774\ub984\uc774\ub098 \uae30\uc220\uacfc \uac19\uc740 \uc6a9\uc5b4\ub97c \uc0ac\uc6a9\ud558\uc138\uc694.\n\u2705 \uc608\uc2dc: \"Data Scientist\", \"Growth Marketing\"\n\n### \ud83c\udf0d country\nISO 3166-1 alpha-2 \ud615\uc2dd\uc758 \uad6d\uac00 \ucf54\ub4dc.\n\u2705 \uc608\uc2dc: \"US\", \"DE\", \"IL\"\n\n### \u23f1\ufe0f time_range\n\uac8c\uc2dc \ub0a0\uc9dc \ud544\ud130.\n\uad6c\uc778\uc774 \uac8c\uc2dc\ub41c \ucd5c\uadfc \uc815\ub3c4\uc5d0 \ub530\ub77c \uacb0\uacfc\ub97c \uc81c\ud55c\ud569\ub2c8\ub2e4.\n\ud5c8\uc6a9\ub418\ub294 \uac12:\n- \ubaa8\ub4e0 \uae30\uac04\n- \uc9c0\ub09c 24\uc2dc\uac04\n- \uc9c0\ub09c \uc8fc\n- \uc9c0\ub09c \ub2ec\n\u2705 \uc608\uc2dc: \"\uc9c0\ub09c \uc8fc\"\n\n### \ud83d\udcbc job_type\n\uace0\uc6a9 \uc720\ud615.\n\ub2e8\uc77c \uac12 \ub610\ub294 \uc27c\ud45c\ub85c \uad6c\ubd84\ub41c \ubaa9\ub85d\uc744 \uc0ac\uc6a9\ud558\uc138\uc694.\n\ud5c8\uc6a9\ub418\ub294 \uac12:\n- \uc815\uaddc\uc9c1\n- \uc544\ub974\ubc14\uc774\ud2b8\n- \uacc4\uc57d\uc9c1\n- \uc784\uc2dc\uc9c1\n- \uc778\ud134\uc2ed\n- \uc790\uc6d0\ubd09\uc0ac\n- \uae30\ud0c0\n\u2705 \uc608\uc2dc: \"\uc815\uaddc\uc9c1,\uacc4\uc57d\uc9c1\"\n\n### \ud83c\udfaf experience_level\n\uad6c\uc9c1\uc758 \uacbd\ub825 \uc218\uc900.\n\ud5c8\uc6a9\ub418\ub294 \uac12:\n- \uc778\ud134\uc2ed\n- \ucd08\ubcf4\uc790\n- \uc900\uc804\ubb38\uac00\n- \uc911\uac04-\uace0\uae09 \uc218\uc900\n- \uc774\uc0ac\uae09\n- \uacbd\uc601\uc9c4\n\u2705 \uc608\uc2dc: \"\uc911\uac04-\uace0\uae09 \uc218\uc900\"\n\n### \ud83c\udf10 remote\n\uadfc\ubb34 \ud615\ud0dc.\n\ud5c8\uc6a9\ub418\ub294 \uac12:\n- \uc6d0\uaca9\n- \ud604\uc7a5\n- \ud558\uc774\ube0c\ub9ac\ub4dc\n- (\uc120\ud638\ud558\uc9c0 \uc54a\uc74c\uc73c\ub85c \ube44\uc6cc\ub450\uc138\uc694)\n\u2705 \uc608\uc2dc: \"\uc6d0\uaca9\"\n\n### \ud83c\udfe2 company\n\ud68c\uc0ac \uc774\ub984\uc73c\ub85c \ud544\ud130\ub9c1.\n\uc120\ud0dd\uc0ac\ud56d. \uc77c\ubc18 \ud14d\uc2a4\ud2b8\ub97c \uc0ac\uc6a9\ud558\uc138\uc694.\n\u2705 \uc608\uc2dc: \"Google\", \"Spotify\"\n\n## \u2705 \uc804\uccb4 \uc608\uc2dc\n\n```json\n{\n \"location\": \"New York\",\n \"keyword\": \"UI Designer\",\n \"country\": \"US\",\n \"time_range\": \"\uc9c0\ub09c \uc8fc\",\n \"job_type\": \"\uc815\uaddc\uc9c1,\uacc4\uc57d\uc9c1\",\n \"experience_level\": \"\uc911\uac04-\uace0\uae09 \uc218\uc900\",\n \"remote\": \"\ud558\uc774\ube0c\ub9ac\ub4dc\",\n \"company\": \"Spotify\"\n}\n```"
},
"typeVersion": 1
},
{
"id": "1d7a7bb0-1531-4516-9373-5e85a090b143",
"name": "On form submission - Discover Jobs",
"type": "n8n-nodes-base.formTrigger",
"position": [
1700,
580
],
"parameters": {
"options": {},
"formTitle": "Linkedin High Intent Prospects And Job Post Hunt",
"formFields": {
"values": [
{
"fieldLabel": "Job Location",
"placeholder": "example: new york",
"requiredField": true
},
{
"fieldLabel": "Keyword",
"placeholder": "example: CMO, AI architect",
"requiredField": true
},
{
"fieldLabel": "Country (2 letters)",
"placeholder": "example: US,UK,IL",
"requiredField": true
}
]
},
"formDescription": "This form lets you customize your job search / prospecting by choosing:\n\nLocation (city or region)\n\nJob title or keywords\n\nCountry code\n\nFilters like posting date, job type, experience level, and remote options\n\nYou can also optionally narrow results by company name.\n\n\ud83e\udde0 Tip: Leave fields blank if you want broader results."
},
"typeVersion": 2.2
},
{
"id": "aea569df-eedd-441f-aba5-c3c26a50fa87",
"name": "HTTP Request- Post API call to Bright Data",
"type": "n8n-nodes-base.httpRequest",
"position": [
2260,
620
],
"parameters": {
"url": "https://api.brightdata.com/datasets/v3/trigger",
"method": "POST",
"options": {},
"jsonBody": "=[\n {\n \"location\": \"{{ $json['Job Location'] }}\",\n \"keyword\": \"{{ $json.Keyword }}\",\n \"country\": \"{{ $json['Country (2 letters)'] }}\",\n \"time_range\": \"Past 24 hours\",\n \"job_type\": \"Part-time\",\n \"experience_level\": \"\",\n \"remote\": \"\",\n \"company\": \"\"\n }\n] ",
"sendBody": true,
"sendQuery": true,
"sendHeaders": true,
"specifyBody": "json",
"queryParameters": {
"parameters": [
{
"name": "dataset_id",
"value": "gd_lpfll7v5hcqtkxl6l"
},
{
"name": "endpoint",
"value": "https://yaron-nofluff.app.n8n.cloud/webhook-test/8c42463d-a631-4a17-a084-4bcbbb3bfc68"
},
{
"name": "notify",
"value": "https://yaron-nofluff.app.n8n.cloud/webhook-test/8c42463d-a631-4a17-a084-4bcbbb3bfc68"
},
{
"name": "format",
"value": "json"
},
{
"name": "uncompressed_webhook",
"value": "true"
},
{
"name": "type",
"value": "discover_new"
},
{
"name": "discover_by",
"value": "=keyword"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer <YOUR_BRIGHT_DATA_API_KEY>"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "8837f055-7243-44b6-87a2-e679d75839d0",
"name": "Wait - Polling Bright Data",
"type": "n8n-nodes-base.wait",
"position": [
2600,
360
],
"parameters": {
"unit": "minutes"
},
"executeOnce": false,
"typeVersion": 1.1
},
{
"id": "1f0ebefa-42a1-450c-b30a-64edabdaedaf",
"name": "If - Checking status of Snapshot - if data is ready or not",
"type": "n8n-nodes-base.if",
"position": [
3040,
360
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "7932282b-71bb-4bbb-ab73-4978e554de7e",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "running"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "e17b4da0-3f9c-45d5-acdf-ab634acfef97",
"name": "HTTP Request - Getting data from Bright Data",
"type": "n8n-nodes-base.httpRequest",
"position": [
3320,
380
],
"parameters": {
"url": "=https://api.brightdata.com/datasets/v3/snapshot/{{ $json.snapshot_id }}",
"options": {},
"sendQuery": true,
"sendHeaders": true,
"queryParameters": {
"parameters": [
{
"name": "format",
"value": "json"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer <YOUR_BRIGHT_DATA_API_KEY>"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "b5bd6a55-f80d-46f9-a59a-beff28de9da7",
"name": "Code - Cleaning Up",
"type": "n8n-nodes-base.code",
"position": [
3600,
400
],
"parameters": {
"jsCode": "// Helper function to strip HTML tags\nfunction stripHtml(html) {\n return html\n .replace(/<[^>]+>/g, '') // remove all HTML tags\n .replace(/ /g, ' ') // decode HTML entities\n .replace(/&[a-z]+;/g, '') // remove other HTML entities\n .replace(/\\s+/g, ' ') // normalize whitespace\n .trim();\n}\n\nreturn items.map(item => {\n const data = item.json;\n\n // Flatten job_poster\n if (data.job_poster) {\n data.job_poster_name = data.job_poster.name || '';\n data.job_poster_title = data.job_poster.title || '';\n data.job_poster_url = data.job_poster.url || '';\n delete data.job_poster;\n }\n\n // Flatten base_salary\n if (data.base_salary) {\n data.salary_min = data.base_salary.min_amount || '';\n data.salary_max = data.base_salary.max_amount || '';\n data.salary_currency = data.base_salary.currency || '';\n data.salary_period = data.base_salary.payment_period || '';\n delete data.base_salary;\n }\n\n // Clean up job description HTML\n if (data.job_description_formatted) {\n data.job_description_plain = stripHtml(data.job_description_formatted);\n }\n\n return { json: data };\n});\n"
},
"typeVersion": 2
},
{
"id": "70f4a4a0-b9ce-4b7a-b232-86014a7f8a3f",
"name": "Google Sheets - Adding All Job Posts",
"type": "n8n-nodes-base.googleSheets",
"position": [
3940,
440
],
"parameters": {
"columns": {
"value": {
"country_code": "={{ $json.country_code }}"
},
"schema": [
{
"id": "url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_posting_id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_posting_id",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_title",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "company_name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "company_name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_location",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_location",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_description_plain",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_description_plain",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_poster_name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_poster_name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_poster_title",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_poster_title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_poster_url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_poster_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "salary_min",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "salary_min",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "salary_max",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "salary_max",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "salary_currency",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "salary_currency",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "salary_period",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "salary_period",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "application_availability",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "application_availability",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_posted_date",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_posted_date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "company_logo",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "company_logo",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "country_code",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "country_code",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "timestamp",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "timestamp",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "company_id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "company_id",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_summary",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "company_url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "company_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_posted_time",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_posted_time",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_num_applicants",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_num_applicants",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "discovery_input",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "discovery_input",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "apply_link",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "apply_link",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "title_id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "title_id",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_description_formatted",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_description_formatted",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "input",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "input",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_seniority_level",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_seniority_level",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_function",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_function",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_employment_type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_employment_type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_industries",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_industries",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "job_base_pay_range",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "job_base_pay_range",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [
"row_number"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {
"handlingExtraData": "insertInNewColumn"
},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1_jbr5zBllTy_pGbogfGSvyv1_0a77I8tU-Ai7BjTAw4/edit#gid=0",
"cachedResultName": "input"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1_jbr5zBllTy_pGbogfGSvyv1_0a77I8tU-Ai7BjTAw4",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1_jbr5zBllTy_pGbogfGSvyv1_0a77I8tU-Ai7BjTAw4/edit?usp=drivesdk",
"cachedResultName": "NoFluff-N8N-Sheet-Template-Job Scraping WIth Bright Data"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.3,
"alwaysOutputData": true
},
{
"id": "297d778f-afa5-4d2d-baea-3b1fb199f77c",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1940,
-40
],
"parameters": {
"width": 300,
"height": 880,
"content": "\ud83e\udde0 Bright Data Trigger \u2013 \uc791\uc5c5 \ucffc\ub9ac \uc0ac\uc6a9\uc790 \uc815\uc758\n\n\uc774 HTTP \uc694\uccad\uc740 Bright Data\uc5d0 POST \ud638\ucd9c\uc744 \ubcf4\ub0b4 \uc0ac\uc6a9\uc790\uc758 \ud544\ud130\uc5d0 \uae30\ubc18\ud55c \uc0c8\ub85c\uc6b4 \ub370\uc774\ud130\uc14b \uc2a4\ub0c5\uc0f7\uc744 \uc2dc\uc791\ud569\ub2c8\ub2e4.\n\n\ud83d\udc4b Form Trigger\ub97c \uc0ac\uc6a9\ud558\uace0 \uc2f6\uc9c0 \uc54a\ub2e4\uba74, \uc774 \ub178\ub4dc\uc5d0\uc11c \uc9c1\uc811 \ud544\ud130\ub97c \uc870\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n\uc0ac\uc6a9\uc790 \uc815\uc758\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:\n\n\"location\" \u2192 \ub3c4\uc2dc, \uc9c0\uc5ed, \ub610\ub294 \ud0a4\uc6cc\ub4dc (\uc608: \"New York\", \"Remote\")\n\n\"keyword\" \u2192 \uc9c1\ubb34 \uc81c\ubaa9 \ub610\ub294 \uc5ed\ud560 (\uc608: \"CMO\", \"AI Engineer\")\n\n\"country\" \u2192 2\uc790\ub9ac \uad6d\uac00 \ucf54\ub4dc (\uc608: \"US\", \"UK\")\n\n\"time_range\" \u2192 \"\uc9c0\ub09c 24\uc2dc\uac04\", \"\uc9c0\ub09c 7\uc77c\" \ub4f1\n\n\"job_type\", \"experience_level\", \"remote\", \"company\" \u2192 \uc120\ud0dd\uc801 \ud544\ud130\n\n\ud83d\udccc \ud301:\n\"\uc9c0\ub09c 24\uc2dc\uac04\" \ub610\ub294 \"\uc9c0\ub09c 7\uc77c\"\uc744 \uc0ac\uc6a9\ud558\uc5ec \uac00\uc7a5 \ucd5c\uc2e0\uc758 \uacb0\uacfc\ub97c \uc5bb\uc73c\uc138\uc694."
},
"typeVersion": 1
},
{
"id": "54303791-b269-4930-85b5-33e50ae08f33",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
2320,
220
],
"parameters": {
"color": 4,
"width": 940,
"height": 360,
"content": "\ube0c\ub77c\uc774\ud2b8 \ub370\uc774\ud130 \uc77c\uc790\ub9ac \uc5bb\uae30"
},
"typeVersion": 1
},
{
"id": "cccb03cb-0432-43ff-9c3a-233de510a775",
"name": "Edit Fields",
"type": "n8n-nodes-base.set",
"position": [
1920,
580
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "12067869-0249-4cd2-b9e2-8e4055a0d917",
"name": "",
"type": "string",
"value": ""
}
]
}
},
"typeVersion": 3.4
}
],
"connections": {
"Edit Fields": {
"main": [
[
{
"node": "HTTP Request- Post API call to Bright Data",
"type": "main",
"index": 0
}
]
]
},
"Snapshot Progress": {
"main": [
[
{
"node": "If - Checking status of Snapshot - if data is ready or not",
"type": "main",
"index": 0
}
]
]
},
"Code - Cleaning Up": {
"main": [
[
{
"node": "Google Sheets - Adding All Job Posts",
"type": "main",
"index": 0
}
]
]
},
"Wait - Polling Bright Data": {
"main": [
[
{
"node": "Snapshot Progress",
"type": "main",
"index": 0
}
]
]
},
"On form submission - Discover Jobs": {
"main": [
[
{
"node": "Edit Fields",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request- Post API call to Bright Data": {
"main": [
[
{
"node": "Wait - Polling Bright Data",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request - Getting data from Bright Data": {
"main": [
[
{
"node": "Code - Cleaning Up",
"type": "main",
"index": 0
}
]
]
},
"If - Checking status of Snapshot - if data is ready or not": {
"main": [
[
{
"node": "Wait - Polling Bright Data",
"type": "main",
"index": 0
}
],
[
{
"node": "HTTP Request - Getting data from Bright Data",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
googleSheetsOAuth2Api
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
3580. Uses httpRequest, formTrigger, googleSheets. Event-driven trigger; 15 nodes.
Source: https://github.com/n8nKOR/n8n-shared-workflow/blob/62a671327e906c22a40d290b339ff6d2373f8d75/workflows/n8nworkflows/hr/3580.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Overview 🌐
Splitout Code. Uses splitOut, httpRequest, googleSheets, stickyNote. Event-driven trigger; 36 nodes.
This n8n workflow is designed for Customer Success Managers (CSM), marketers, sales teams, and data administrators who need to automate the process of uploading and processing CSV data in HubSpot. It
The SEO On Page API is a powerful tool for keyword research, competitor analysis, backlink insights, and overall SEO optimization. With multiple endpoints, you can instantly gather actionable SEO data
Demonstration video