This workflow corresponds to n8n.io template #9282 — we link there as the canonical source.
This workflow follows the Form Trigger → Gmail 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 →
{
"id": "RNryWSC0apJGzqyR",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Extract & Organize Academic Publications with GPT-4 Mini, Google Sheets & Gmail",
"tags": [
{
"id": "6j6b2V0RliqC08cJ",
"name": "web-scraping",
"createdAt": "2025-09-20T08:49:15.037Z",
"updatedAt": "2025-09-20T08:49:15.037Z"
},
{
"id": "cXtzhMFhVn8afG5q",
"name": "ai-extraction",
"createdAt": "2025-09-20T08:49:15.072Z",
"updatedAt": "2025-09-20T08:49:15.072Z"
},
{
"id": "gZQUGdjmN7e6kMwE",
"name": "academic-research",
"createdAt": "2025-09-20T08:49:15.090Z",
"updatedAt": "2025-09-20T08:49:15.090Z"
},
{
"id": "pG7av0aT43P2zPBn",
"name": "customizable",
"createdAt": "2025-09-20T10:09:47.065Z",
"updatedAt": "2025-09-20T10:09:47.065Z"
}
],
"nodes": [
{
"id": "db9e10d9-1c6b-4029-bd36-2f4251c45170",
"name": "Fetch website content",
"type": "n8n-nodes-base.httpRequest",
"position": [
240,
336
],
"parameters": {
"url": "={{ $json.URL }}#publications ",
"options": {
"allowUnauthorizedCerts": true
}
},
"typeVersion": 4.1
},
{
"id": "ac9d664f-1a7a-4463-8e27-4afbfb3c6e88",
"name": "Extract all publications from the page",
"type": "n8n-nodes-base.html",
"position": [
464,
336
],
"parameters": {
"options": {
"cleanUpText": true
},
"operation": "extractHtmlContent",
"extractionValues": {
"values": [
{
"key": "summary",
"cssSelector": ".dropDownSummary.textArea h3 ",
"returnArray": true
},
{
"key": "publications",
"cssSelector": ".dropDownSummary.textArea ul ul li",
"returnArray": true
},
{
"key": "bio",
"cssSelector": ".dropDownSummary.textArea "
}
]
}
},
"typeVersion": 1.2
},
{
"id": "7f8666a0-1f5f-45b2-a8ae-4d1c681afb6c",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
992,
560
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "eeff0140-0ce9-4126-ba89-141028200e18",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
16,
336
],
"parameters": {
"options": {},
"formTitle": "Academic Staff Publication",
"formFields": {
"values": [
{
"fieldLabel": "Staff Name"
},
{
"fieldLabel": "URL"
},
{
"fieldLabel": "Email"
},
{
"fieldLabel": "Google Scholar URL"
}
]
}
},
"typeVersion": 2.3
},
{
"id": "b354dcc3-831b-4c8b-93e2-ec5d934d839a",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-16,
192
],
"parameters": {
"color": 3,
"width": 1728,
"height": 544,
"content": "# \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nBy CSChin"
},
"typeVersion": 1
},
{
"id": "79bdf992-e9ea-4495-adf7-024278849d02",
"name": "Switch",
"type": "n8n-nodes-base.switch",
"position": [
1904,
688
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "journal_papers",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "loose"
},
"combinator": "and",
"conditions": [
{
"id": "e8f90d0e-ec6b-4598-8996-9908fb175db7",
"operator": {
"type": "string",
"operation": "regex"
},
"leftValue": "={{ $json.journal_conference_toLowerCase() }}",
"rightValue": "(journal|ieee transactions|ieee/acm transactions|ieee/asme transaction|energy|applied|advanced engineering informatics|ocean engineering|water|batteries|sensors|processes|soft computing|ieee access|advances in mechanical engineering|neuralcomputing|neural computing|engineering applications of artificial intelligence|energies|renewable|sustainable|review|letters|reports|annals|bulletin|quarterly|monthly|food chemistry|waste management|food bioscience|oil crop science|environmental science and pollution research|polymer composites|progress in organic coatings|carbon|marine pollution bulletin|proceedings|materials letters|acs applied materials and interfaces|acs sustainable chemistry|chemosphere|chemical engineering science|composite structures|data in brief|reinforced plastics|water science |applied clay science|jec composites magazine|computers in biology and medicine|biomechanics and modeling in mechanobiology|rsc advances|process biochemistry|fibers and polymers|lwt|polymers|fermentation|bioprinting|data inbrief|scientific data|chemengineering|polymer testing|composites|composite|polymer|animal|aging cell|advanced materials research|computational materials science|materials research express|chemical engineering and processing|structures|advanced bioceramics|mechanisms and machine science|natural mineral nanatubes|npj heritage science)"
}
]
},
"renameOutput": true
},
{
"outputKey": "conference_papers",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "loose"
},
"combinator": "and",
"conditions": [
{
"id": "5cbb30a1-f815-4466-84e0-a0cce000fbc3",
"operator": {
"type": "string",
"operation": "regex"
},
"leftValue": "={{ $json.journal_conference_toLowerCase() }}",
"rightValue": "(conference|symposium|workshop|proceedings|tencon|congress|supercomputingasia|summit|meeting|forum|seminar|colloquium|webinar|icmt|icam|pgsret|cirp|iultcs|fluidization|power generation|micro|nano|heat|mass transfer|computer aided|tolerancing|applied mechanics|experimental mechanics|applied learning|ocean|satec|global conference on materials science and engineering|cmse)"
}
]
},
"renameOutput": true
},
{
"outputKey": "books",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "loose"
},
"combinator": "and",
"conditions": [
{
"id": "87b84199-fd0c-4393-adb8-8131225c5061",
"operator": {
"type": "string",
"operation": "regex"
},
"leftValue": "={{ $json.journal_conference_toLowerCase() }}",
"rightValue": "(crc press|springer|publisher|iet|ios press|book|woodhead publishing|trans tech publications ltd)"
}
]
},
"renameOutput": true
},
{
"outputKey": "magazine",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "loose"
},
"combinator": "and",
"conditions": [
{
"id": "63e1c345-abb7-44b7-b0d2-eb5580be302c",
"operator": {
"type": "string",
"operation": "regex"
},
"leftValue": "={{ $json.journal_conference_toLowerCase() }}",
"rightValue": "(magazine|potential|news)"
}
]
},
"renameOutput": true
},
{
"outputKey": "patent",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "loose"
},
"combinator": "and",
"conditions": [
{
"id": "9592819a-9066-4f0a-b63f-9bc89dd8fcd6",
"operator": {
"type": "string",
"operation": "regex"
},
"leftValue": "={{ $json.journal_conference_toLowerCase() }}",
"rightValue": "(us|singapore)"
}
]
},
"renameOutput": true
}
]
},
"options": {
"fallbackOutput": "extra",
"renameFallbackOutput": "Others"
},
"looseTypeValidation": true
},
"typeVersion": 3.2
},
{
"id": "8a1f8b3e-6ea5-4d38-a142-a49736f2b3c7",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
1728,
192
],
"parameters": {
"width": 816,
"height": 1200,
"content": "# Switch Node: Route by publication type"
},
"typeVersion": 1
},
{
"id": "86630849-d08f-4bda-98aa-fcf103c50636",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-832,
192
],
"parameters": {
"width": 784,
"height": 832,
"content": "**Source:** https://www.ncl.ac.uk/singapore/staff/profile/chengchin.html#publications\n\n## Overview\nAutomated workflow extracts and organizes academic publications from university profiles using AI. Auto-categorizes and stores in Google Sheets with email notifications.\n\n## Target Audience\nAcademic Researchers, University Administrators, Research Librarians, Department Heads, PhD Students\n\n## Use Cases\nTrack faculty research output \u2022 Maintain publication databases \u2022 Generate reports by category/year\n\n## Prerequisites\n**Google Sheets** - API access, Spreadsheet IDs | **OpenAI API** - API key, GPT-4/3.5 access | **Gmail** - OAuth2 credentials (optional)\n\n## Workflow Architecture\n**Main Flow:** Form submission \u2192 Fetch/parse HTML \u2192 Split publications \u2192 AI extracts data\n**Path A:** Save to master sheet \u2192 Route by type to category sheets (Journal, Conference, Book, Magazine, Preprints, Other)\n**Path B:** Convert to CSV \u2192 Send email\n\n## Setup Instructions\n**1. OpenAI:** Model: gpt-4-turbo, Temperature: 0.3, Prompt: Extract title, authors, year, type, venue, DOI, URL\n**2. Google Sheets:** Append to master and category sheets\n**3. Routing:** Route by publication type\n**4. Email:** Subject: Publications Scraped | Body: Summary + CSV\n\n## Customization\nAdd fields: Modify prompt \u2022 Change categories: Update routing \u2022 Multiple universities: Use URL patterns \u2022 AI models: GPT-4 or GPT-3.5 \u2022 Scheduling: Use Schedule Trigger"
},
"typeVersion": 1
},
{
"id": "20239bcb-0f32-4cdc-965a-2abeab138c1d",
"name": "Separate Each Publication",
"type": "n8n-nodes-base.splitOut",
"position": [
688,
336
],
"parameters": {
"include": "selectedOtherFields",
"options": {},
"fieldToSplitOut": "publications ",
"fieldsToInclude": "Year"
},
"typeVersion": 1
},
{
"id": "0dd69765-b766-4686-9412-106f264993d8",
"name": "Save All to Master Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
1264,
240
],
"parameters": {
"columns": {
"value": {
"year": "={{ $json.output.publications[0].year }}",
"authors": "={{ $json.output.publications[0].authors }}",
"journal_conference": "={{ $json.output.publications[0].journal_conference }}"
},
"schema": [
{
"id": "authors",
"type": "string",
"display": true,
"required": false,
"displayName": "authors",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "journal_conference",
"type": "string",
"display": true,
"required": false,
"displayName": "journal_conference",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "year",
"type": "string",
"display": true,
"required": false,
"displayName": "year",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 834341142,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit#gid=834341142",
"cachedResultName": "all"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit?usp=drivesdk",
"cachedResultName": "publication"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "40942434-5fe1-4248-b373-863e1410e12a",
"name": "Send Notification Email",
"type": "n8n-nodes-base.gmail",
"position": [
1488,
432
],
"parameters": {
"sendTo": "{{ $json.Email }}",
"message": "=Hey, here's the scraped data of your publication from your {{ $('On form submission').item.json.URL }}!",
"options": {
"attachmentsUi": {
"attachmentsBinary": [
{}
]
}
},
"subject": "=publication csv for {{ $('On form submission').item.json['Staff Name'] }}"
},
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "0efd2d3b-af35-4791-bb28-027a3ad88e3d",
"name": "Format as CSV Export",
"type": "n8n-nodes-base.convertToFile",
"position": [
1264,
432
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "d4c47234-566c-44a3-a157-7d5b58c01148",
"name": "Sort by Year (Journal)",
"type": "n8n-nodes-base.sort",
"position": [
2128,
272
],
"parameters": {
"options": {},
"sortFieldsUi": {
"sortField": [
{
"order": "descending",
"fieldName": "year"
}
]
}
},
"typeVersion": 1
},
{
"id": "87d96dc4-fc62-4eb3-9147-6d0ec12f0afa",
"name": "Sort by Year (Conference)",
"type": "n8n-nodes-base.sort",
"position": [
2128,
464
],
"parameters": {
"options": {},
"sortFieldsUi": {
"sortField": [
{
"order": "descending",
"fieldName": "year"
}
]
}
},
"typeVersion": 1
},
{
"id": "1d4d4253-e2da-4ccf-9bba-219225eebf4c",
"name": "Sort by Year (Book)",
"type": "n8n-nodes-base.sort",
"position": [
2128,
656
],
"parameters": {
"options": {},
"sortFieldsUi": {
"sortField": [
{
"order": "descending",
"fieldName": "year"
}
]
}
},
"typeVersion": 1
},
{
"id": "733ab00d-d029-493d-947e-346e54336da2",
"name": "Sort by Year (Magazine)",
"type": "n8n-nodes-base.sort",
"position": [
2128,
848
],
"parameters": {
"options": {},
"sortFieldsUi": {
"sortField": [
{
"order": "descending",
"fieldName": "year"
}
]
}
},
"typeVersion": 1
},
{
"id": "4a140857-3012-4dbe-ace4-c02b2ab794d5",
"name": "Sort by Year (Patent)",
"type": "n8n-nodes-base.sort",
"position": [
2128,
1040
],
"parameters": {
"options": {},
"sortFieldsUi": {
"sortField": [
{
"order": "descending",
"fieldName": "year"
}
]
}
},
"typeVersion": 1
},
{
"id": "63a9925d-8223-4ecf-bb91-0b7e8d14dbe5",
"name": "Sort by Year (Other)",
"type": "n8n-nodes-base.sort",
"position": [
2128,
1232
],
"parameters": {
"options": {},
"sortFieldsUi": {
"sortField": [
{
"order": "descending",
"fieldName": "year"
}
]
}
},
"typeVersion": 1
},
{
"id": "69edf87d-8d76-4991-9e29-d5ded3c9c895",
"name": "Append to Conference Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2352,
464
],
"parameters": {
"columns": {
"value": {
"year": "={{ $json.year }}",
"count": "={{ $json.count_journal_conference }}",
"conference": "={{ $json.journal_conference }}"
},
"schema": [
{
"id": "count",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "count",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "year",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "year",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "conference",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "conference",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"count"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 963306312,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit#gid=963306312",
"cachedResultName": "conference"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit?usp=drivesdk",
"cachedResultName": "publication"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "1143a4fb-5f39-4ccb-89df-ea9302222afe",
"name": "Generate Summary Report",
"type": "@n8n/n8n-nodes-langchain.informationExtractor",
"position": [
912,
336
],
"parameters": {
"text": "={{ $json.publications }}",
"options": {
"systemPromptTemplate": "You are an expert extraction algorithm.\nOnly extract author names, journal, conference and year information from the text.\nIf you do not know the value of an attribute asked to extract, you may omit the attribute's value."
},
"schemaType": "fromJson",
"jsonSchemaExample": "{\n \"publications\": [\n {\n \"authors\": \"Author1, Author2, Author3\",\n \"journal_conference\": \"Journal of Example Research\",\n \"year\": \"2023\"\n }\n ]\n}"
},
"typeVersion": 1.2
},
{
"id": "49669d21-3046-4a76-bbb4-8dfb9c3de5b6",
"name": "Calculate Publication Statistics (Count)",
"type": "n8n-nodes-base.summarize",
"position": [
1488,
240
],
"parameters": {
"options": {},
"fieldsToSplitBy": "journal_conference,year",
"fieldsToSummarize": {
"values": [
{
"field": "journal_conference"
}
]
}
},
"typeVersion": 1.1
},
{
"id": "9e06c0d3-35e8-4724-90bf-f64071f1f4ab",
"name": "Append to Book Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2352,
656
],
"parameters": {
"columns": {
"value": {
"book": "={{ $json.journal_conference }}",
"year": "={{ $json.year }}",
"count": "={{ $json.count_journal_conference }}"
},
"schema": [
{
"id": "count",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "count",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "year",
"type": "string",
"display": true,
"required": false,
"displayName": "year",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "book",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "book",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"count"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1003783807,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit#gid=1003783807",
"cachedResultName": "book"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit?usp=drivesdk",
"cachedResultName": "publication"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "aba55bb1-e449-449b-8679-0fa2fb366c34",
"name": "Append to Magazine Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2352,
848
],
"parameters": {
"columns": {
"value": {
"year": "={{ $json.year }}",
"journal_conference": "={{ $json.journal_conference }}",
"count_journal_conference": "={{ $json.count_journal_conference }}"
},
"schema": [
{
"id": "count_journal_conference",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "count_journal_conference",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "year",
"type": "string",
"display": true,
"required": false,
"displayName": "year",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "journal_conference",
"type": "string",
"display": true,
"required": false,
"displayName": "journal_conference",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"count_journal_conference"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1439806152,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit#gid=1439806152",
"cachedResultName": "magazine"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit?usp=drivesdk",
"cachedResultName": "publication"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "87cfc544-0139-4489-81aa-53f82479f0d9",
"name": "Append to Patent Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2352,
1040
],
"parameters": {
"columns": {
"value": {
"year": "={{ $json.year }}",
"journal_conference": "={{ $json.journal_conference }}",
"count_journal_conference": "={{ $json.count_journal_conference }}"
},
"schema": [
{
"id": "count_journal_conference",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "count_journal_conference",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "year",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "year",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "journal_conference",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "journal_conference",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"count_journal_conference"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1401160945,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit#gid=1401160945",
"cachedResultName": "patent"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit?usp=drivesdk",
"cachedResultName": "publication"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "508f2c4e-2de0-492a-b197-082dcc8634d9",
"name": "Append to Other Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2352,
1232
],
"parameters": {
"columns": {
"value": {
"year": "={{ $json.year }}",
"count": "={{ $json.count_journal_conference }}",
"others": "={{ $json.journal_conference }}"
},
"schema": [
{
"id": "count",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "count",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "year",
"type": "string",
"display": true,
"required": false,
"displayName": "year",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "others",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "others",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"count"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1185425191,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit#gid=1185425191",
"cachedResultName": "others"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit?usp=drivesdk",
"cachedResultName": "publication"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "56c6c7a3-0244-439a-a314-e025ee46725c",
"name": "Append to Journal Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2352,
272
],
"parameters": {
"columns": {
"value": {
"year": "={{ $json.year }}",
"count": "={{ $json.count_journal_conference }}",
"journal": "={{ $json.journal_conference }}"
},
"schema": [
{
"id": "count",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "count",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "year",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "year",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "journal",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "journal",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"count"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1660356448,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit#gid=1660356448",
"cachedResultName": "journal"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1nHcAN-Xq60MPBaLdCm7WsFuRMlyA2FjXwbRhOKsbq0k/edit?usp=drivesdk",
"cachedResultName": "publication"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "9c531d58-08de-4534-a798-d9255593e46f",
"connections": {
"Switch": {
"main": [
[
{
"node": "Sort by Year (Journal)",
"type": "main",
"index": 0
}
],
[
{
"node": "Sort by Year (Conference)",
"type": "main",
"index": 0
}
],
[
{
"node": "Sort by Year (Book)",
"type": "main",
"index": 0
}
],
[
{
"node": "Sort by Year (Magazine)",
"type": "main",
"index": 0
}
],
[
{
"node": "Sort by Year (Patent)",
"type": "main",
"index": 0
}
],
[
{
"node": "Sort by Year (Other)",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Generate Summary Report",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Fetch website content",
"type": "main",
"index": 0
}
]
]
},
"Sort by Year (Book)": {
"main": [
[
{
"node": "Append to Book Sheet",
"type": "main",
"index": 0
}
]
]
},
"Format as CSV Export": {
"main": [
[
{
"node": "Send Notification Email",
"type": "main",
"index": 0
}
]
]
},
"Sort by Year (Other)": {
"main": [
[
{
"node": "Append to Other Sheet",
"type": "main",
"index": 0
}
]
]
},
"Fetch website content": {
"main": [
[
{
"node": "Extract all publications from the page",
"type": "main",
"index": 0
}
]
]
},
"Sort by Year (Patent)": {
"main": [
[
{
"node": "Append to Patent Sheet",
"type": "main",
"index": 0
}
]
]
},
"Sort by Year (Journal)": {
"main": [
[
{
"node": "Append to Journal Sheet",
"type": "main",
"index": 0
}
]
]
},
"Generate Summary Report": {
"main": [
[
{
"node": "Format as CSV Export",
"type": "main",
"index": 0
},
{
"node": "Save All to Master Sheet",
"type": "main",
"index": 0
}
]
]
},
"Sort by Year (Magazine)": {
"main": [
[
{
"node": "Append to Magazine Sheet",
"type": "main",
"index": 0
}
]
]
},
"Save All to Master Sheet": {
"main": [
[
{
"node": "Calculate Publication Statistics (Count)",
"type": "main",
"index": 0
}
]
]
},
"Separate Each Publication": {
"main": [
[
{
"node": "Generate Summary Report",
"type": "main",
"index": 0
}
]
]
},
"Sort by Year (Conference)": {
"main": [
[
{
"node": "Append to Conference Sheet",
"type": "main",
"index": 0
}
]
]
},
"Extract all publications from the page": {
"main": [
[
{
"node": "Separate Each Publication",
"type": "main",
"index": 0
}
]
]
},
"Calculate Publication Statistics (Count)": {
"main": [
[
{
"node": "Switch",
"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.
gmailOAuth2googleSheetsOAuth2ApiopenAiApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Author: CSChin Example Source: https://www.ncl.ac.uk/singapore/staff/profile/chengchin.html#publications
Source: https://n8n.io/workflows/9282/ — 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.
Transform your Gmail sent folder into a comprehensive, enriched contact database automatically. This workflow processes hundreds or thousands of sent emails, extracting and enriching contact informati
Process multiple invoices automatically using Mistral's dedicated OCR model—at approximately $0.002 per page. Upload batches of PDF, PNG, or JPG invoices through a simple form, extract structured fina
Sending a plain PDF resume doesn’t stand out anymore. This workflow allows candidates to convert their resume and photo into a personalized video resume. Recruiters get a more engaging first impressio
Automates PDF data extraction using OpenAI GPT, saves to Google Sheets, sends email confirmations. Reduces manual entry by 90%. Receives PDF uploads via form Splits & loops through files AI extracts s
Episode 18 Scary Stories TikTok final. Uses httpRequest, lmChatOpenAi, lmChatOllama, lmChatDeepSeek. Event-driven trigger; 83 nodes.