n8n-workflows/workflows/3517_workflow_3517.json
2025-05-14 11:58:29 +03:00

622 lines
16 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"nodes": [
{
"id": "ee3cd6ff-40ba-40d4-bbbf-90244da4a272",
"name": "When clicking Test workflow",
"type": "n8n-nodes-base.manualTrigger",
"position": [
0,
-155
],
"parameters": {},
"typeVersion": 1
},
{
"id": "68584aab-c5f3-450a-a1e3-cddc8d64082d",
"name": "Extract from File",
"type": "n8n-nodes-base.extractFromFile",
"position": [
1100,
-280
],
"parameters": {
"options": {},
"operation": "fromJson"
},
"typeVersion": 1
},
{
"id": "e23a67a1-44df-4b83-a80a-9383f4432c7d",
"name": "If is archived is false",
"type": "n8n-nodes-base.if",
"position": [
1540,
-280
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "e051d2f2-7c22-4864-bbe7-4832cc54acaa",
"operator": {
"type": "boolean",
"operation": "false",
"singleValue": true
},
"leftValue": "={{ $json.data.isArchived }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "313764d0-f115-46d3-a2e3-1fde647f7d85",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1848,
-60
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "1IOLtYX7aTspCAN8",
"name": "OpenAI Pollup"
}
},
"typeVersion": 1.2
},
{
"id": "81fcc7a0-955d-4930-b203-8e98d57e3c4c",
"name": "If extension is json",
"type": "n8n-nodes-base.filter",
"position": [
660,
-280
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "7b80be39-b5cc-4f96-8529-75559aaece38",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.name.split('.').pop(); }}",
"rightValue": "=json"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "1c8c81ea-d0ae-4925-ae4b-05482c1b5fa2",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-340,
-380
],
"parameters": {
"color": 4,
"width": 260,
"height": 440,
"content": "## How to export your Google keep notes \n* Google has a dedicated service for exporting your google data, called [Google Takeout](https://takeout.google.com/), you'll have to login it. \n* Click on \"Deselect all\" then select only Google Keep and click on \"Next\". \n- Select the destination (use \"Send download link via mail\" as you'll have to uncompress a zip file before to send it again to Google Drive)\n- Upload to Google Drive all json files from your uncompresed file, to specific directory and you are ready to start!\n"
},
"typeVersion": 1
},
{
"id": "31eb6398-cca0-4ed1-910a-470fa49c9727",
"name": "Search in \"Keep\" folder",
"type": "n8n-nodes-base.googleDrive",
"position": [
220,
-155
],
"parameters": {
"limit": 2,
"filter": {
"folderId": {
"__rl": true,
"mode": "list",
"value": "1BggjRVCqyDnECK_mB2M-PYareptQv99P",
"cachedResultUrl": "https://drive.google.com/drive/folders/1BggjRVCqyDnECK_mB2M-PYareptQv99P",
"cachedResultName": "Keep"
},
"whatToSearch": "files"
},
"options": {},
"resource": "fileFolder"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "veQ5hnnOES56fTcI",
"name": "Google Drive account good"
}
},
"typeVersion": 3
},
{
"id": "653d04b2-4020-4254-a8f5-53e15228adb7",
"name": "Loop every 10 items",
"type": "n8n-nodes-base.splitInBatches",
"position": [
440,
-155
],
"parameters": {
"options": {},
"batchSize": 10
},
"typeVersion": 3
},
{
"id": "c1171bd7-5e2d-49e6-a52b-6e9282cb093d",
"name": "Download the files",
"type": "n8n-nodes-base.googleDrive",
"position": [
880,
-280
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "veQ5hnnOES56fTcI",
"name": "Google Drive account good"
}
},
"typeVersion": 3
},
{
"id": "4d9caff3-2ac8-40fc-91a4-1b395e693141",
"name": "Put some AI treatment here if you need it",
"type": "@n8n/n8n-nodes-langchain.agent",
"notes": "Yu can use this AI Agent to process a number or anything you need from your notes",
"position": [
1760,
-280
],
"parameters": {
"text": "=Extract the amount in euros of the input. output just the amount and nothing else. \nHere is the input:{{ $json.data.textContent }}",
"options": {},
"promptType": "define"
},
"typeVersion": 1.8
},
{
"id": "d97c4e02-4b1a-479f-8492-e601c553ac57",
"name": "Set the fields for export",
"type": "n8n-nodes-base.set",
"position": [
2136,
-280
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "d05409ea-b739-47bd-9c07-0dea40b83de1",
"name": "textContent",
"type": "string",
"value": "={{ $('If is archived is false').item.json.data.textContent }}"
},
{
"id": "acbe202e-de95-4a47-a90b-78556fec4650",
"name": "Edited",
"type": "string",
"value": "={{ new Date($('If is archived is false').item.json.data.userEditedTimestampUsec / 1000).toLocaleString() }}"
},
{
"id": "13f00e53-75fd-4db5-9a22-b5e329c72b47",
"name": "Created",
"type": "string",
"value": "={{ new Date($('If is archived is false').item.json.data.createdTimestampUsec / 1000).toLocaleString() }}"
},
{
"id": "7e58e874-5238-4fb6-8b00-ea947c59ec4b",
"name": "isArchived",
"type": "boolean",
"value": "={{ $('If is archived is false').item.json.data.isArchived }}"
},
{
"id": "721f31d8-4944-4a63-878e-71816eee755c",
"name": "Amount",
"type": "string",
"value": "={{ $json.output }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "0f8d9b1f-f5de-477f-ad50-eeb89bcf8dc7",
"name": "Add to google sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2356,
-155
],
"parameters": {
"columns": {
"value": {},
"schema": [
{
"id": "textContent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "textContent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Edited",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Edited",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Created",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Created",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "isArchived",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "isArchived",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1rjgyHw6XU4NTRCx4eXuQ0AIXhY3mWqxg1NiAhrSnuzE/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1rjgyHw6XU4NTRCx4eXuQ0AIXhY3mWqxg1NiAhrSnuzE",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1rjgyHw6XU4NTRCx4eXuQ0AIXhY3mWqxg1NiAhrSnuzE/edit?usp=drivesdk",
"cachedResultName": "googl keep export (10/05/25)"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "gdLmm513ROUyH6oU",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
},
{
"id": "31141cf2-94d6-45ad-8632-18001a6d4d36",
"name": "Filter",
"type": "n8n-nodes-base.if",
"position": [
1320,
-280
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "11bacf5f-6675-4681-b205-5e5293eaae02",
"operator": {
"type": "string",
"operation": "contains"
},
"leftValue": "={{ $json.data.textContentHtml }}",
"rightValue": "dépensé"
},
{
"id": "c40da1df-559c-4278-bde1-cdb8e65c8428",
"operator": {
"type": "string",
"operation": "contains"
},
"leftValue": "={{ $json.data.textContentHtml }}",
"rightValue": "depense"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "c4c941f5-6579-4f4f-9916-cdd496498760",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
2300,
-360
],
"parameters": {
"color": 5,
"height": 360,
"content": "## Create an empty google sheet file\n\nThat will get your entries from the notes "
},
"typeVersion": 1
},
{
"id": "3ab60239-85cf-4c84-94d3-659fdfef4316",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
140,
-300
],
"parameters": {
"color": 5,
"height": 360,
"content": "## Set the directory Where you put the files"
},
"typeVersion": 1
},
{
"id": "49546099-e072-4183-a14e-fff80928920d",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1240,
-480
],
"parameters": {
"color": 5,
"height": 360,
"content": "## Filter the files\n\nIf you need the content to contain a word, or after a certain date.\n\nIf you don't need to filter it, just remove the node"
},
"typeVersion": 1
},
{
"id": "195923a2-faf9-40c3-95c0-08fdc078e291",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1720,
-500
],
"parameters": {
"color": 5,
"width": 320,
"height": 560,
"content": "## Process each file with AI\n\nIf you need the extract some information from the contextq, you can do it here. If you don't need it, just delete the node"
},
"typeVersion": 1
},
{
"id": "07b3570a-72cf-480b-b3b8-fb461b57822d",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-340,
80
],
"parameters": {
"color": 4,
"width": 380,
"height": 300,
"content": "## Setup\n* Export your Google Keep notes (see \"how to export your Google Keep notes\")\n\n- Connect Google Drive, OpenAI, and Google Sheets in n8n.\n\n- Set the correct folder path for your notes in the “Search in Keep folder” node.\n\n- Point the Google Sheet node to your spreadsheet"
},
"typeVersion": 1
},
{
"id": "48e1cff2-2748-4d15-91b4-d5ee2f5d9581",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-340,
-500
],
"parameters": {
"width": 720,
"height": 100,
"content": "## Contact me\n### If you need some help with this workflow: Write to me: [thomas@pollup.net](mailto:thomas@pollup.net)\n"
},
"typeVersion": 1
}
],
"connections": {
"Filter": {
"main": [
[
{
"node": "If is archived is false",
"type": "main",
"index": 0
}
]
]
},
"Extract from File": {
"main": [
[
{
"node": "Filter",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Put some AI treatment here if you need it",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Download the files": {
"main": [
[
{
"node": "Extract from File",
"type": "main",
"index": 0
}
]
]
},
"Add to google sheet": {
"main": [
[
{
"node": "Loop every 10 items",
"type": "main",
"index": 0
}
]
]
},
"Loop every 10 items": {
"main": [
[],
[
{
"node": "If extension is json",
"type": "main",
"index": 0
}
]
]
},
"If extension is json": {
"main": [
[
{
"node": "Download the files",
"type": "main",
"index": 0
}
]
]
},
"If is archived is false": {
"main": [
[
{
"node": "Put some AI treatment here if you need it",
"type": "main",
"index": 0
}
]
]
},
"Search in \"Keep\" folder": {
"main": [
[
{
"node": "Loop every 10 items",
"type": "main",
"index": 0
}
]
]
},
"Set the fields for export": {
"main": [
[
{
"node": "Add to google sheet",
"type": "main",
"index": 0
}
]
]
},
"When clicking Test workflow": {
"main": [
[
{
"node": "Search in \"Keep\" folder",
"type": "main",
"index": 0
}
]
]
},
"Put some AI treatment here if you need it": {
"main": [
[
{
"node": "Set the fields for export",
"type": "main",
"index": 0
}
]
]
}
}
}