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

286 lines
6.0 KiB
JSON

{
"nodes": [
{
"name": "On clicking 'execute'",
"type": "n8n-nodes-base.manualTrigger",
"position": [
340,
380
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Write Binary File",
"type": "n8n-nodes-base.writeBinaryFile",
"position": [
1680,
280
],
"parameters": {
"fileName": "={{$node[\"Config\"].parameter[\"values\"][\"string\"][0][\"value\"]}}"
},
"typeVersion": 1
},
{
"name": "Read Binary File",
"type": "n8n-nodes-base.readBinaryFile",
"position": [
580,
460
],
"parameters": {
"filePath": "={{$node[\"Config\"].parameter[\"values\"][\"string\"][0][\"value\"]}}"
},
"typeVersion": 1,
"continueOnFail": true,
"alwaysOutputData": true
},
{
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"position": [
1020,
460
],
"parameters": {
"url": "https://readwise.io/reader/api/state/",
"options": {},
"authentication": "headerAuth",
"queryParametersUi": {
"parameter": [
{
"name": "schemaVersion",
"value": "5"
},
{
"name": "filter[updated_at][gt]",
"value": "={{$json[\"last_synced\"]}}"
}
]
},
"headerParametersUi": {
"parameter": []
}
},
"credentials": {
"httpHeaderAuth": {
"id": "10",
"name": "Header Auth account"
}
},
"typeVersion": 1
},
{
"name": "Telegram",
"type": "n8n-nodes-base.telegram",
"position": [
1480,
460
],
"parameters": {
"text": "={{$json[\"title\"]}} by {{$json[\"author\"]}}\n\n{{$json[\"summary\"]}}\n\n{{$json[\"url\"]}}",
"chatId": "={{$node[\"Config\"].parameter[\"values\"][\"number\"][0][\"value\"]}}",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "2",
"name": "my bot"
}
},
"typeVersion": 1
},
{
"name": "Binary to json",
"type": "n8n-nodes-base.moveBinaryData",
"position": [
800,
460
],
"parameters": {
"options": {}
},
"typeVersion": 1,
"alwaysOutputData": true
},
{
"name": "Json to binary",
"type": "n8n-nodes-base.moveBinaryData",
"position": [
1480,
280
],
"parameters": {
"mode": "jsonToBinary",
"options": {}
},
"typeVersion": 1
},
{
"name": "Set new update time",
"type": "n8n-nodes-base.functionItem",
"position": [
1280,
280
],
"parameters": {
"functionCode": "return {\n last_synced: new Date().getTime()\n};"
},
"typeVersion": 1
},
{
"name": "Split into baches",
"type": "n8n-nodes-base.function",
"position": [
1280,
460
],
"parameters": {
"functionCode": "const newValue = Object.values(items[0].json.documents).filter(it => it.category === 'article').filter(it => it.children.length === 0).map(it => ({\n json: {\n url: it.url,\n title: it.title,\n author: it.author,\n summary: it.summary,\n saved_at: new Date(it.saved_at),\n }\n}))\n\n\nreturn newValue;"
},
"typeVersion": 1
},
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
340,
540
],
"parameters": {
"triggerTimes": {
"item": [
{
"mode": "everyX",
"unit": "minutes",
"value": 10
}
]
}
},
"typeVersion": 1
},
{
"name": "Config",
"type": "n8n-nodes-base.set",
"position": [
800,
300
],
"parameters": {
"values": {
"number": [
{
"name": "Telegram chat it",
"value": 19999
}
],
"string": [
{
"name": "file path",
"value": "/whatever/readwiseLastSynced.json"
}
]
},
"options": {}
},
"typeVersion": 1
}
],
"connections": {
"Cron": {
"main": [
[
{
"node": "Read Binary File",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request": {
"main": [
[
{
"node": "Split into baches",
"type": "main",
"index": 0
},
{
"node": "Set new update time",
"type": "main",
"index": 0
}
]
]
},
"Binary to json": {
"main": [
[
{
"node": "HTTP Request",
"type": "main",
"index": 0
}
]
]
},
"Json to binary": {
"main": [
[
{
"node": "Write Binary File",
"type": "main",
"index": 0
}
]
]
},
"Read Binary File": {
"main": [
[
{
"node": "Binary to json",
"type": "main",
"index": 0
}
]
]
},
"Split into baches": {
"main": [
[
{
"node": "Telegram",
"type": "main",
"index": 0
}
]
]
},
"Set new update time": {
"main": [
[
{
"node": "Json to binary",
"type": "main",
"index": 0
}
]
]
},
"On clicking 'execute'": {
"main": [
[
{
"node": "Read Binary File",
"type": "main",
"index": 0
}
]
]
}
}
}