Skip to content

Instantly share code, notes, and snippets.

@Asthajhawar
Created August 22, 2025 05:33
Show Gist options
  • Select an option

  • Save Asthajhawar/00d0da39d4dc4eda32653511c6deba2e to your computer and use it in GitHub Desktop.

Select an option

Save Asthajhawar/00d0da39d4dc4eda32653511c6deba2e to your computer and use it in GitHub Desktop.
{
"name": "LinkedIn Job Finder Automation using Bright Data API & Google Sheets",
"nodes": [
{
"parameters": {
"formTitle": "LinkedIn Job Finder",
"formFields": {
"values": [
{
"fieldLabel": "City",
"requiredField": true
},
{
"fieldLabel": "Job Title",
"requiredField": true
},
{
"fieldLabel": "Country",
"requiredField": true
},
{
"fieldLabel": "Job Type (Optional)",
"fieldType": "dropdown",
"fieldOptions": {
"values": [
{
"option": "Full-Time"
},
{
"option": "Part-Time"
},
{
"option": "Remote"
},
{
"option": "WFH"
},
{
"option": "Contract"
},
{
"option": "Internship"
},
{
"option": "Freelance"
}
]
}
}
]
},
"options": {}
},
"id": "9617d433-62f7-4ddf-bf47-a9a3208aa248",
"name": "On form submission1",
"type": "n8n-nodes-base.formTrigger",
"position": [
480,
400
],
"webhookId": "37d0e84c-0cda-47f8-826d-9ae5b22ba1d5",
"typeVersion": 2.2
},
{
"parameters": {
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "35ed620d-b5d5-4e97-bcc5-52b283d85616",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "ready"
}
]
},
"options": {}
},
"id": "47c35950-354c-42e4-b707-60ed5b1eeb2f",
"name": "Check Final Status",
"type": "n8n-nodes-base.if",
"position": [
1456,
400
],
"typeVersion": 2.2
},
{
"parameters": {
"method": "POST",
"url": "https://api.brightdata.com/datasets/v3/trigger",
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "dataset_id",
"value": "gd_lpfll7v5hcqtkxl6l"
},
{
"name": "include_errors",
"value": "true"
},
{
"name": "type",
"value": "discover_new"
},
{
"name": "discover_by",
"value": "keyword"
},
{
"name": "limit_per_input",
"value": "2"
}
]
},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer e11639cbf9577d01b0f99d89da6eb3b74b4a3cd25c124d9fd4897a1af667ac8c"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"input\": [\n {\n \"location\": \"{{$node['On form submission1'].json['City'] ? $node['On form submission1'].json['City'].trim() : ''}}\",\n \"keyword\": \"{{$node['On form submission1'].json['Job Title'] ? $node['On form submission1'].json['Job Title'].trim() : ''}}\",\n \"country\": \"{{$node['On form submission1'].json['Country'] ? $node['On form submission1'].json['Country'].slice(0, 2).toUpperCase() : ''}}\",\n \"time_range\": \"Past week\",\n \"job_type\": \"{{ ['full-time', 'part-time', 'internship', 'contract', 'temporary'].includes($node['On form submission1'].json['Job_type']?.toLowerCase()) ? $node['On form submission1'].json['Job_type'] : '' }}\"\n }\n ],\n \"custom_output_fields\": [\n \"url\",\n \"job_posting_id\",\n \"job_title\",\n \"company_name\",\n \"company_id\",\n \"job_location\",\n \"job_summary\",\n \"job_seniority_level\",\n \"job_function\",\n \"job_employment_type\",\n \"job_industries\",\n \"job_base_pay_range\",\n \"company_url\",\n \"job_posted_time\",\n \"job_num_applicants\",\n \"discovery_input\",\n \"apply_link\",\n \"country_code\",\n \"title_id\",\n \"company_logo\",\n \"job_posted_date\",\n \"job_poster\",\n \"application_availability\",\n \"job_description_formatted\",\n \"base_salary\",\n \"timestamp\",\n \"error\",\n \"error_code\",\n \"warning\",\n \"warning_code\"\n ]\n}\n",
"options": {}
},
"id": "cef9c86d-98ce-4944-9907-d815cba406f4",
"name": "Create Snapshot ID",
"type": "n8n-nodes-base.httpRequest",
"position": [
768,
400
],
"typeVersion": 4.2
},
{
"parameters": {
"url": "=https://api.brightdata.com/datasets/v3/progress/{{ $json.snapshot_id }}",
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "format",
"value": "json"
}
]
},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer e11639cbf9577d01b0f99d89da6eb3b74b4a3cd25c124d9fd4897a1af667ac8c"
}
]
},
"options": {}
},
"id": "66705bee-6424-4f6f-8c24-d9aa7a198399",
"name": "Check Snapshot Status",
"type": "n8n-nodes-base.httpRequest",
"position": [
1152,
400
],
"typeVersion": 4.2
},
{
"parameters": {
"amount": 1,
"unit": "minutes"
},
"id": "b5f9e1c9-eace-4a68-a084-dc254b1b9c46",
"name": "Wait 1 minute",
"type": "n8n-nodes-base.wait",
"position": [
1760,
768
],
"webhookId": "7047efad-de41-4608-b95c-d3e0203ef620",
"typeVersion": 1.1
},
{
"parameters": {
"url": "=https://api.brightdata.com/datasets/v3/snapshot/{{ $json.snapshot_id }}",
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "format",
"value": "json"
}
]
},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer e11639cbf9577d01b0f99d89da6eb3b74b4a3cd25c124d9fd4897a1af667ac8c"
}
]
},
"options": {}
},
"id": "fff887f5-0388-4667-a5e9-7ef72ea36ac0",
"name": "Scrape Data from SnapID",
"type": "n8n-nodes-base.httpRequest",
"position": [
2032,
368
],
"typeVersion": 4.2
},
{
"parameters": {
"operation": "append",
"documentId": {
"__rl": true,
"value": "1fbfsuzsHa66uokRMbl-bd_H73oPQ0wTzV9QO_NxsKr8",
"mode": "list",
"cachedResultName": "Bright Data LinkedIn Job",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1fbfsuzsHa66uokRMbl-bd_H73oPQ0wTzV9QO_NxsKr8/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID_HERE/edit#gid=0",
"cachedResultName": "Sheet1"
},
"columns": {
"mappingMode": "autoMapInputData",
"value": {
"Location": "={{ $json.job_location }}",
"Job Title": "={{ $json.job_title }}",
"Apply Link": "={{ $json.apply_link }}",
"Job Detail": "={{ $json.job_summary }}",
"Company URL": "={{ $json.company_url }}",
"Company Name ": "={{ $json.company_name }}"
},
"matchingColumns": [
"row_number"
],
"schema": [
{
"id": "Location",
"displayName": "Location",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Job Title",
"displayName": "Job Title",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Apply Link",
"displayName": "Apply Link",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "Job Detail",
"displayName": "Job Detail",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Company URL",
"displayName": "Company URL",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Company Name ",
"displayName": "Company Name ",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "url",
"displayName": "url",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_posting_id",
"displayName": "job_posting_id",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_title",
"displayName": "job_title",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "company_name",
"displayName": "company_name",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "company_id",
"displayName": "company_id",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_location",
"displayName": "job_location",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_summary",
"displayName": "job_summary",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_seniority_level",
"displayName": "job_seniority_level",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_function",
"displayName": "job_function",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_employment_type",
"displayName": "job_employment_type",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_industries",
"displayName": "job_industries",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "company_url",
"displayName": "company_url",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_posted_time",
"displayName": "job_posted_time",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_num_applicants",
"displayName": "job_num_applicants",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "discovery_input",
"displayName": "discovery_input",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "apply_link",
"displayName": "apply_link",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "country_code",
"displayName": "country_code",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "title_id",
"displayName": "title_id",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "company_logo",
"displayName": "company_logo",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_posted_date",
"displayName": "job_posted_date",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_poster",
"displayName": "job_poster",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "application_availability",
"displayName": "application_availability",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "job_description_formatted",
"displayName": "job_description_formatted",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "base_salary",
"displayName": "base_salary",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "timestamp",
"displayName": "timestamp",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"id": "57572d1d-3366-447d-8186-62a121824033",
"name": "Update Job Lists in sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2512,
368
],
"typeVersion": 4.6,
"credentials": {
"googleSheetsOAuth2Api": {
"id": "EAYYLC4HWp5uMK7B",
"name": "Google Sheets account"
}
}
},
{
"parameters": {
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "eb682420-fc89-4e01-a491-5a4a3f6bf10f",
"operator": {
"type": "string",
"operation": "contains"
},
"leftValue": "={{ $json.job_summary }}",
"rightValue": "={{ $json.shortCommonName }}"
}
]
},
"options": {}
},
"id": "3afbef52-97fe-4ead-8d57-d8e98e684b47",
"name": "Filter",
"type": "n8n-nodes-base.filter",
"position": [
2272,
368
],
"typeVersion": 2.2
},
{
"parameters": {
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "f01bd215-c406-493c-a6e4-2b8ec5686b44",
"operator": {
"type": "number",
"operation": "notEquals"
},
"leftValue": "={{ $json.records }}",
"rightValue": "={{ 0 }}"
}
]
},
"options": {}
},
"id": "1badd4f4-4f66-4777-a2b7-3343f2afb2b3",
"name": "If",
"type": "n8n-nodes-base.if",
"position": [
1760,
384
],
"typeVersion": 2.2
},
{
"parameters": {
"content": "πŸ”Ή Search by Keyword β€” Form Trigger\nPurpose:\nCollects the user-submitted job search criteria including city, job title, country, and job type.\nTriggers the workflow when new search parameters are entered.",
"height": 340,
"width": 300,
"color": 2
},
"id": "df16ac92-0f96-40cd-ad9c-da17332a3e81",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
368,
240
],
"typeVersion": 1
},
{
"parameters": {
"content": "πŸ”Ή LinkedIn Job Search Fetcher β€” HTTP Request (POST to Bright Data)\nPurpose:\nSends the job search criteria to Bright Data's LinkedIn dataset API.\nInitiates the scraping job to fetch LinkedIn job postings matching the criteria.",
"height": 380,
"width": 320,
"color": 3
},
"id": "454c5db0-beb7-4a0b-95ca-8308a114e420",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
688,
208
],
"typeVersion": 1
},
{
"parameters": {
"content": "πŸ”Ή Check Delivery Status of Snap ID β€” HTTP Request (GET)\nPurpose:\nChecks the status of the scraping job using the returned snapshot_id.\nEnsures the task is complete before continuing to data extraction.",
"height": 360,
"width": 300,
"color": 4
},
"id": "c68c4da8-6965-45cb-833f-0bb3a99a289c",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1040,
224
],
"typeVersion": 1
},
{
"parameters": {
"content": "πŸ”Ή Wait 1 minute β€” Wait Node\nPurpose:\nDelays the workflow execution by 1 minute.\nPrevents frequent polling of Bright Data API to reduce load and errors.",
"height": 280,
"width": 380,
"color": 7
},
"id": "57d2b098-41ce-4ee6-ab1d-130e2645dc3e",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1632,
640
],
"typeVersion": 1
},
{
"parameters": {
"content": "πŸ”Ή Check Final Status β€” IF Node #1\nPurpose:\nConditionally checks if snapshot status is \"ready\".\nIf yes β†’ proceed to download scraped data.\nIf no β†’ loop back to Wait Node and recheck.",
"height": 360,
"width": 270,
"color": 5
},
"id": "47fc7436-1f6b-4bec-b88c-4df12ceddf57",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1360,
224
],
"typeVersion": 1
},
{
"parameters": {
"content": "πŸ”Ή Decode Snapshot from Response β€” HTTP Request (GET)\nPurpose:\nDownloads the final scraped LinkedIn job dataset using the ready snapshot ID.\nContains full job posting data in JSON format.",
"height": 400,
"width": 260,
"color": 6
},
"id": "7a978cd2-efad-474d-92b7-3f9f28155f00",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
1952,
192
],
"typeVersion": 1
},
{
"parameters": {
"content": "πŸ”Ή Google Sheets β€” Google Sheets (AppendOrUpdate)\nPurpose:\nAppends each LinkedIn job result into your Google Sheet.\nCaptures data fields like job title, company name, location, job details, and apply links.",
"height": 400,
"width": 340,
"color": 3
},
"id": "6ff9b0c5-b18c-44e9-b671-86388428927b",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
2432,
208
],
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"If": {
"main": [
[
{
"node": "Scrape Data from SnapID",
"type": "main",
"index": 0
}
]
]
},
"Filter": {
"main": [
[
{
"node": "Update Job Lists in sheet",
"type": "main",
"index": 0
}
]
]
},
"Wait 1 minute": {
"main": [
[
{
"node": "Check Snapshot Status",
"type": "main",
"index": 0
}
]
]
},
"Check Final Status": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
}
],
[
{
"node": "Wait 1 minute",
"type": "main",
"index": 0
}
]
]
},
"Create Snapshot ID": {
"main": [
[
{
"node": "Check Snapshot Status",
"type": "main",
"index": 0
}
]
]
},
"On form submission1": {
"main": [
[
{
"node": "Create Snapshot ID",
"type": "main",
"index": 0
}
]
]
},
"Check Snapshot Status": {
"main": [
[
{
"node": "Check Final Status",
"type": "main",
"index": 0
}
]
]
},
"Scrape Data from SnapID": {
"main": [
[
{
"node": "Filter",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {},
"versionId": "d6b34a90-b4d1-4a80-a824-1d53efdf09fe",
"meta": {
"templateId": "4775",
"instanceId": "9d03ecbc004741c90b66f7be49dd5c16598b92f5d4b2404ff3caf08843105f45"
},
"id": "RapckiaPl5DNuZnu",
"tags": []
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment