Workflow: Splitout Code Create

Workflow Details

Download Workflow
{
    "nodes": [
        {
            "id": "2804a082-c17b-482f-828d-901dab7e7a11",
            "name": "When clicking \u2018Test workflow\u2019",
            "type": "n8n-nodes-base.manualTrigger",
            "position": [
                -160,
                40
            ],
            "parameters": [],
            "typeVersion": 1
        },
        {
            "id": "58d51340-5246-4089-ae63-f16ff4be184e",
            "name": "Get list of owners",
            "type": "n8n-nodes-base.httpRequest",
            "position": [
                280,
                40
            ],
            "parameters": {
                "url": "https:\/\/api.hubapi.com\/crm\/v3\/owners",
                "options": [],
                "authentication": "predefinedCredentialType",
                "nodeCredentialType": "hubspotOAuth2Api"
            },
            "credentials": {
                "hubspotOAuth2Api": {
                    "id": "qubiIFrowxvUdpu6",
                    "name": "HubSpot account for node"
                }
            },
            "typeVersion": 4.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "335ffd8c-68fa-4d55-85e9-462963a8a291",
            "name": "Get list of clients for owner",
            "type": "n8n-nodes-base.httpRequest",
            "position": [
                280,
                575
            ],
            "parameters": {
                "url": "https:\/\/api.hubapi.com\/crm\/v3\/objects\/contacts\/search",
                "method": "POST",
                "options": [],
                "jsonBody": "={\n  \"filterGroups\": [\n    {\n      \"filters\": [\n        {\n          \"propertyName\": \"hubspot_owner_id\",\n          \"operator\": \"EQ\",\n          \"value\": \"{{ $('When Executed by Another Workflow').item.json.ownerId }}\"\n        }\n      ]\n    }\n  ],\n  \"properties\": [\"firstname\", \"lastname\", \"email\", \"linkedinURL\", \"company\"],\n\"limit\": 200,\n\"after\": {{ $node['Edit'].json[\"sofar\"] }}\n} ",
                "sendBody": true,
                "specifyBody": "json",
                "authentication": "predefinedCredentialType",
                "nodeCredentialType": "hubspotOAuth2Api"
            },
            "credentials": {
                "hubspotOAuth2Api": {
                    "id": "qubiIFrowxvUdpu6",
                    "name": "HubSpot account for node"
                }
            },
            "typeVersion": 4.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "5d116139-1764-4d3a-8696-d280fb7e9d8f",
            "name": "Sticky Note1",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -210,
                -260
            ],
            "parameters": {
                "color": 4,
                "width": 420,
                "height": 460,
                "content": "## Settings\n- Set in \"Set data here\" the email you are registered with in Hubspot as an Owner, and the link of a Google sheet copied [from this one](https:\/\/docs.google.com\/spreadsheets\/d\/1y17jIU6JnNPcmazWf2GsmRpdjBBMnkN41tRJnAO5KrQ\/edit?usp=sharing)\n"
            },
            "typeVersion": 1
        },
        {
            "id": "a8a15bd4-5a46-4f70-87bd-4db7170b4928",
            "name": "If",
            "type": "n8n-nodes-base.if",
            "position": [
                720,
                575
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "loose"
                    },
                    "combinator": "and",
                    "conditions": [
                        {
                            "id": "d5df6d6c-ff5f-46ad-a8d4-38e326d7415e",
                            "operator": {
                                "type": "number",
                                "operation": "gte"
                            },
                            "leftValue": "={{ $node['Edit'].json.sofar }}",
                            "rightValue": "={{ $('Get list of clients for owner').item.json.total }}"
                        }
                    ]
                },
                "looseTypeValidation": true
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "eda30bd9-95bb-43d4-8981-479036103dd1",
            "name": "Edit",
            "type": "n8n-nodes-base.set",
            "position": [
                60,
                575
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "8a403dc5-2b05-430d-b1cc-39f70f5ac82d",
                            "name": "sofar",
                            "type": "number",
                            "value": "=0"
                        },
                        {
                            "id": "dca65b15-f545-42f1-90df-37efb03e267d",
                            "name": "results",
                            "type": "array",
                            "value": "[]"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "4c6c8217-6610-413e-8b1c-185a96e44882",
            "name": "Increment Page",
            "type": "n8n-nodes-base.set",
            "position": [
                500,
                500
            ],
            "parameters": {
                "values": {
                    "number": [
                        {
                            "name": "sofar",
                            "value": "={{$node[\"Edit\"].json[\"sofar\"] = $node[\"Edit\"].json[\"sofar\"] + $('Get list of clients for owner').item.json.results.length}}"
                        }
                    ]
                },
                "options": []
            },
            "executeOnce": true,
            "typeVersion": 1
        },
        {
            "id": "58f53fe6-36a4-4385-ba93-e15dd589c0a4",
            "name": "Split Out1",
            "type": "n8n-nodes-base.splitOut",
            "position": [
                1160,
                575
            ],
            "parameters": {
                "options": [],
                "fieldToSplitOut": "results"
            },
            "typeVersion": 1
        },
        {
            "id": "c92983ba-bef3-463a-a6de-8f205822f359",
            "name": "Merge al the entries",
            "type": "n8n-nodes-base.code",
            "position": [
                940,
                575
            ],
            "parameters": {
                "jsCode": "let results = [],\n  i = 0;\n\ndo {\n  try {\n    results = results.concat($(\"Get list of clients for owner\").all(0, i));\n  } catch (error) {\n    console.log(results)\n    return results;\n  }\n  i++;\n} while (true);"
            },
            "typeVersion": 2
        },
        {
            "id": "68c51fbd-3845-4eb2-9204-d78cc30413bf",
            "name": "If linkedin url is empty",
            "type": "n8n-nodes-base.if",
            "position": [
                1820,
                40
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                        {
                            "id": "84952199-2e1d-4ea8-bfb8-d4aa975d6df1",
                            "operator": {
                                "type": "string",
                                "operation": "empty",
                                "singleValue": true
                            },
                            "leftValue": "={{ $json.linkedin_url }}",
                            "rightValue": ""
                        }
                    ]
                }
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "18e4e4bd-4039-4770-a3d0-13edafe6103c",
            "name": "if new post",
            "type": "n8n-nodes-base.if",
            "position": [
                3580,
                40
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                        {
                            "id": "48d6777d-5431-4cb9-9716-5059277bac5e",
                            "operator": {
                                "type": "string",
                                "operation": "notEquals"
                            },
                            "leftValue": "={{ $('Get rows from document').item.json['last post'] }}",
                            "rightValue": "={{ $('Set last_post').item.json.last_post }}"
                        }
                    ]
                }
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "a5623af7-6fba-43b0-be50-c9d3c52aba32",
            "name": "Get list of clients",
            "type": "n8n-nodes-base.executeWorkflow",
            "position": [
                940,
                40
            ],
            "parameters": {
                "mode": "each",
                "options": [],
                "workflowId": {
                    "__rl": true,
                    "mode": "id",
                    "value": "={{ $workflow.id }}",
                    "cachedResultName": "={{ $workflow.id }}"
                },
                "workflowInputs": {
                    "value": {
                        "ownerId": "={{ $json.id }}"
                    },
                    "schema": [
                        {
                            "id": "ownerId",
                            "type": "string",
                            "display": true,
                            "removed": false,
                            "required": false,
                            "displayName": "ownerId",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        }
                    ],
                    "mappingMode": "defineBelow",
                    "matchingColumns": [
                        "ownerId"
                    ],
                    "attemptToConvertTypes": false,
                    "convertFieldsToString": true
                }
            },
            "typeVersion": 1.1999999999999999555910790149937383830547332763671875
        },
        {
            "id": "9f771153-6b83-4ac0-b642-ee2d4b65a41c",
            "name": "When Executed by Another Workflow",
            "type": "n8n-nodes-base.executeWorkflowTrigger",
            "position": [
                -160,
                575
            ],
            "parameters": {
                "workflowInputs": {
                    "values": [
                        {
                            "name": "ownerId"
                        }
                    ]
                }
            },
            "typeVersion": 1.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "437dc3e5-0340-41ce-aea1-36749bd054ad",
            "name": "Get last post",
            "type": "n8n-nodes-base.executeWorkflow",
            "position": [
                3140,
                40
            ],
            "parameters": {
                "mode": "each",
                "options": [],
                "workflowId": {
                    "__rl": true,
                    "mode": "list",
                    "value": "rnVcO8Bw0avTm4GB",
                    "cachedResultName": "get personal posts for agent"
                },
                "workflowInputs": {
                    "value": {
                        "maxItems": 1,
                        "username": "={{ $json.username }}",
                        "responseType": "detail"
                    },
                    "schema": [
                        {
                            "id": "username",
                            "type": "string",
                            "display": true,
                            "required": false,
                            "displayName": "username",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "responseType",
                            "type": "string",
                            "display": true,
                            "required": false,
                            "displayName": "responseType",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "maxItems",
                            "type": "number",
                            "display": true,
                            "required": false,
                            "displayName": "maxItems",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "posted_after",
                            "display": true,
                            "required": false,
                            "displayName": "posted_after",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        }
                    ],
                    "mappingMode": "defineBelow",
                    "matchingColumns": [],
                    "attemptToConvertTypes": false,
                    "convertFieldsToString": true
                }
            },
            "typeVersion": 1.1999999999999999555910790149937383830547332763671875
        },
        {
            "id": "a0dda2f2-cb89-4557-8cfc-5e3a01e34637",
            "name": "Gmail",
            "type": "n8n-nodes-base.gmail",
            "position": [
                4680,
                140
            ],
            "webhookId": "eea16996-1d02-4861-b83d-6145cee90ac6",
            "parameters": {
                "sendTo": "={{ $('Set data here').first().json.email }}",
                "message": "={{ $json.text }}",
                "options": {
                    "appendAttribution": false
                },
                "subject": "Changes in your clients",
                "emailType": "text"
            },
            "credentials": {
                "gmailOAuth2": {
                    "id": "DLjspol9TLgpGaXa",
                    "name": "Gmail account 2"
                }
            },
            "typeVersion": 2.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "99911831-e603-454c-b533-2e387f2008c4",
            "name": "Search for user by link",
            "type": "n8n-nodes-base.httpRequest",
            "notes": "Search by Name and company",
            "position": [
                2920,
                140
            ],
            "parameters": {
                "url": "https:\/\/linkedin-api8.p.rapidapi.com\/get-profile-data-by-url",
                "options": [],
                "sendQuery": true,
                "sendHeaders": true,
                "authentication": "genericCredentialType",
                "genericAuthType": "httpHeaderAuth",
                "queryParameters": {
                    "parameters": [
                        {
                            "name": "url",
                            "value": "={{ $json.profileURL }}"
                        }
                    ]
                },
                "headerParameters": {
                    "parameters": [
                        {
                            "name": "x-rapidapi-host",
                            "value": "linkedin-api8.p.rapidapi.com"
                        }
                    ]
                }
            },
            "credentials": {
                "httpHeaderAuth": {
                    "id": "nhoVFnkO31mejJrI",
                    "name": "RapidAPI Key"
                }
            },
            "executeOnce": false,
            "notesInFlow": true,
            "typeVersion": 4.20000000000000017763568394002504646778106689453125,
            "alwaysOutputData": false
        },
        {
            "id": "903f6be4-b468-488c-aa41-50f60ee92bcb",
            "name": "Do nothing",
            "type": "n8n-nodes-base.noOp",
            "position": [
                2480,
                -160
            ],
            "parameters": [],
            "typeVersion": 1
        },
        {
            "id": "695202d6-60bd-4788-b029-0c03a9e3c89a",
            "name": "Merge profileURL",
            "type": "n8n-nodes-base.code",
            "position": [
                2700,
                140
            ],
            "parameters": {
                "mode": "runOnceForEachItem",
                "jsCode": "\/\/ Add a new field called 'myNewField' to the JSON of the item\n$input.item.json.profileURL = $json.profileURL;\n\nreturn $input.item;"
            },
            "typeVersion": 2
        },
        {
            "id": "ead5d235-7f73-41e4-86d3-48ad7d4cfa8d",
            "name": "Set last_post",
            "type": "n8n-nodes-base.set",
            "position": [
                3360,
                40
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "93be271c-22c8-4afe-a928-e9d2593b025d",
                            "name": "last_post",
                            "type": "string",
                            "value": "={{ $json.text[0] }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "a89746c8-5fb7-4c69-930f-d0f451bcef54",
            "name": "Set last_position",
            "type": "n8n-nodes-base.set",
            "position": [
                3360,
                240
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "93be271c-22c8-4afe-a928-e9d2593b025d",
                            "name": "last_position",
                            "type": "string",
                            "value": "={{ $json.position[0].title }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "467aa5a3-c9f5-407f-8571-e9ba333109e2",
            "name": "if new position",
            "type": "n8n-nodes-base.if",
            "position": [
                3580,
                240
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                        {
                            "id": "48d6777d-5431-4cb9-9716-5059277bac5e",
                            "operator": {
                                "type": "string",
                                "operation": "notEquals"
                            },
                            "leftValue": "={{ $json.last_position }}",
                            "rightValue": "={{ $('Get rows from document').item.json['current position'] }}"
                        }
                    ]
                }
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "f6456ca1-bb31-4bf3-8175-7f8b5f4a65bb",
            "name": "Set data here",
            "type": "n8n-nodes-base.set",
            "position": [
                60,
                40
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "a43825a4-f9cd-4b38-975c-b1de771cebea",
                            "name": "sheetLink",
                            "type": "string",
                            "value": "https:\/\/docs.google.com\/spreadsheets\/d\/1y17jIU6JnNPcmazWf2GsmRpdjBBMnkN41tRJnAO5KrQ\/edit?gid=0#gid=0"
                        },
                        {
                            "id": "ea837d0b-e8d6-4594-9861-550d30f05db0",
                            "name": "email",
                            "type": "string",
                            "value": "zeerobug@gmail.com"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "f904c3fb-9320-4b5e-92af-c7cc697eb9dc",
            "name": "Sticky Note",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                220,
                -260
            ],
            "parameters": {
                "color": 4,
                "width": 230,
                "height": 460,
                "content": "## Hubspot API\nCalls a Hubpot API endpoint to get the list of Owners\nYou have to select \"Predefined credential  type\" and choose \"Hubspot Oauth2 API\". Then folow the instructions [here](https:\/\/docs.n8n.io\/integrations\/builtin\/credentials\/hubspot\/?utm_source=n8n_app&utm_medium=credential_settings&utm_campaign=create_new_credentials_modal#required-scopes-for-hubspot-trigger-node)"
            },
            "typeVersion": 1
        },
        {
            "id": "5a499d0c-bbe5-4041-a082-6111658bf155",
            "name": "Change this for testing",
            "type": "n8n-nodes-base.filter",
            "position": [
                1160,
                40
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "strict"
                    },
                    "combinator": "or",
                    "conditions": [
                        {
                            "id": "45031804-4846-4b03-8c8f-8f1a747986a4",
                            "operator": {
                                "type": "string",
                                "operation": "equals"
                            },
                            "leftValue": "={{ $json.properties.email }}",
                            "rightValue": "=nuno.domingues@toyotacaetano.pt"
                        }
                    ]
                }
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "089690f8-ddf5-46e4-933c-152095ea02ac",
            "name": "Create entry with email",
            "type": "n8n-nodes-base.googleSheets",
            "position": [
                1380,
                40
            ],
            "parameters": {
                "columns": {
                    "value": {
                        "email": "={{ $json.properties.email }}"
                    },
                    "schema": [
                        {
                            "id": "email",
                            "type": "string",
                            "display": true,
                            "removed": false,
                            "required": false,
                            "displayName": "email",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "linkedin_url",
                            "type": "string",
                            "display": true,
                            "removed": true,
                            "required": false,
                            "displayName": "linkedin_url",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "last post",
                            "type": "string",
                            "display": true,
                            "removed": true,
                            "required": false,
                            "displayName": "last post",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "current position",
                            "type": "string",
                            "display": true,
                            "removed": true,
                            "required": false,
                            "displayName": "current position",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "date",
                            "type": "string",
                            "display": true,
                            "removed": true,
                            "required": false,
                            "displayName": "date",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        }
                    ],
                    "mappingMode": "defineBelow",
                    "matchingColumns": [
                        "email"
                    ],
                    "attemptToConvertTypes": false,
                    "convertFieldsToString": false
                },
                "options": [],
                "operation": "appendOrUpdate",
                "sheetName": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                },
                "documentId": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                }
            },
            "credentials": {
                "googleSheetsOAuth2Api": {
                    "id": "gdLmm513ROUyH6oU",
                    "name": "Google Sheets account"
                }
            },
            "typeVersion": 4.5,
            "alwaysOutputData": true
        },
        {
            "id": "60617dc9-021b-41be-b7bf-0816bddba05e",
            "name": "Get rows from document",
            "type": "n8n-nodes-base.googleSheets",
            "position": [
                1600,
                40
            ],
            "parameters": {
                "options": [],
                "filtersUI": {
                    "values": [
                        {
                            "lookupValue": "={{ $json.email }}",
                            "lookupColumn": "email"
                        }
                    ]
                },
                "sheetName": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                },
                "documentId": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                }
            },
            "credentials": {
                "googleSheetsOAuth2Api": {
                    "id": "gdLmm513ROUyH6oU",
                    "name": "Google Sheets account"
                }
            },
            "typeVersion": 4.5,
            "alwaysOutputData": true
        },
        {
            "id": "21c2bbd5-75f1-4c80-a4ec-4c2870890fcf",
            "name": "Search for user profile by names",
            "type": "n8n-nodes-base.httpRequest",
            "notes": "Search by Name and company",
            "position": [
                2040,
                -60
            ],
            "parameters": {
                "url": "https:\/\/linkedin-api8.p.rapidapi.com\/search-people",
                "options": [],
                "sendQuery": true,
                "sendHeaders": true,
                "authentication": "genericCredentialType",
                "genericAuthType": "httpHeaderAuth",
                "queryParameters": {
                    "parameters": [
                        {
                            "name": "firstName",
                            "value": "={{ $('Get list of clients').item.json.properties.firstname }}"
                        },
                        {
                            "name": "lastName",
                            "value": "={{ $('Get list of clients').item.json.properties.lastname }}"
                        },
                        {
                            "name": "company",
                            "value": "={{ $('Get list of clients').item.json.properties.company }}"
                        }
                    ]
                },
                "headerParameters": {
                    "parameters": [
                        {
                            "name": "x-rapidapi-host",
                            "value": "linkedin-api8.p.rapidapi.com"
                        }
                    ]
                }
            },
            "credentials": {
                "httpHeaderAuth": {
                    "id": "nhoVFnkO31mejJrI",
                    "name": "RapidAPI Key"
                }
            },
            "executeOnce": false,
            "notesInFlow": true,
            "typeVersion": 4.20000000000000017763568394002504646778106689453125,
            "alwaysOutputData": false
        },
        {
            "id": "1a6f6571-a89a-4e6e-82a5-c239661d6131",
            "name": "Profile URL not found?",
            "type": "n8n-nodes-base.if",
            "position": [
                2260,
                -60
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                        {
                            "id": "c561dcaf-e164-46e5-8f44-8ebcd2943c78",
                            "operator": {
                                "type": "string",
                                "operation": "empty",
                                "singleValue": true
                            },
                            "leftValue": "={{ $json.data.items[0].profileURL }}",
                            "rightValue": ""
                        }
                    ]
                }
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "2811ca64-1e43-4934-abc2-f1a746b2cf68",
            "name": "Set the profile URL",
            "type": "n8n-nodes-base.set",
            "position": [
                2480,
                40
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "d6d3ebce-153c-44b0-a2f8-3c8ac41381cb",
                            "name": "profileURL",
                            "type": "string",
                            "value": "={{ $json.data.items[0].profileURL }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "d79a3896-e5b3-4b63-ad04-848f34db8100",
            "name": "Set the profile URL1",
            "type": "n8n-nodes-base.set",
            "position": [
                2480,
                240
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "d433d14f-b862-4f43-969e-5e911a138f8c",
                            "name": "profileURL",
                            "type": "string",
                            "value": "={{ $('Get rows from document').item.json.linkedin_url }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "73683bde-7431-47e2-b70f-8e0dd2725c84",
            "name": "Update last post",
            "type": "n8n-nodes-base.googleSheets",
            "position": [
                3800,
                40
            ],
            "parameters": {
                "columns": {
                    "value": {
                        "date": "= {{new Date().format('dd-MM-yyyy')}}",
                        "email": "={{ $('Change this for testing').item.json.properties.email }}",
                        "last post": "={{ $('Set last_post').item.json.last_post }}",
                        "linkedin_url": "={{ $('Merge profileURL').item.json.profileURL }}",
                        "current position": "={{ $json.last_position }}"
                    },
                    "schema": [
                        {
                            "id": "email",
                            "type": "string",
                            "display": true,
                            "removed": false,
                            "required": false,
                            "displayName": "email",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "linkedin_url",
                            "type": "string",
                            "display": true,
                            "required": false,
                            "displayName": "linkedin_url",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "last post",
                            "type": "string",
                            "display": true,
                            "required": false,
                            "displayName": "last post",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "current position",
                            "type": "string",
                            "display": true,
                            "removed": false,
                            "required": false,
                            "displayName": "current position",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "date",
                            "type": "string",
                            "display": true,
                            "required": false,
                            "displayName": "date",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        }
                    ],
                    "mappingMode": "defineBelow",
                    "matchingColumns": [
                        "email"
                    ],
                    "attemptToConvertTypes": false,
                    "convertFieldsToString": false
                },
                "options": [],
                "operation": "appendOrUpdate",
                "sheetName": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                },
                "documentId": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                }
            },
            "credentials": {
                "googleSheetsOAuth2Api": {
                    "id": "gdLmm513ROUyH6oU",
                    "name": "Google Sheets account"
                }
            },
            "typeVersion": 4.5
        },
        {
            "id": "71f66801-3b12-4633-a95b-c4c8788117bd",
            "name": "Updates last position",
            "type": "n8n-nodes-base.googleSheets",
            "position": [
                3800,
                240
            ],
            "parameters": {
                "columns": {
                    "value": {
                        "date": "= {{new Date().format('dd-MM-yyyy')}}",
                        "email": "={{ $('Change this for testing').item.json.properties.email }}",
                        "linkedin_url": "={{ $('Merge profileURL').item.json.profileURL }}",
                        "current position": "={{ $json.last_position }}"
                    },
                    "schema": [
                        {
                            "id": "email",
                            "type": "string",
                            "display": true,
                            "removed": false,
                            "required": false,
                            "displayName": "email",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "linkedin_url",
                            "type": "string",
                            "display": true,
                            "required": false,
                            "displayName": "linkedin_url",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "last post",
                            "type": "string",
                            "display": true,
                            "removed": true,
                            "required": false,
                            "displayName": "last post",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "current position",
                            "type": "string",
                            "display": true,
                            "removed": false,
                            "required": false,
                            "displayName": "current position",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        },
                        {
                            "id": "date",
                            "type": "string",
                            "display": true,
                            "required": false,
                            "displayName": "date",
                            "defaultMatch": false,
                            "canBeUsedToMatch": true
                        }
                    ],
                    "mappingMode": "defineBelow",
                    "matchingColumns": [
                        "email"
                    ],
                    "attemptToConvertTypes": false,
                    "convertFieldsToString": false
                },
                "options": [],
                "operation": "appendOrUpdate",
                "sheetName": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                },
                "documentId": {
                    "__rl": true,
                    "mode": "url",
                    "value": "={{ $('Set data here').first().json.sheetLink }}"
                }
            },
            "credentials": {
                "googleSheetsOAuth2Api": {
                    "id": "gdLmm513ROUyH6oU",
                    "name": "Google Sheets account"
                }
            },
            "typeVersion": 4.5
        },
        {
            "id": "d67c1106-5d91-4d00-980b-1b3578a1c86f",
            "name": "Set post_updated",
            "type": "n8n-nodes-base.set",
            "position": [
                4020,
                40
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "71118d71-0ea6-4b01-ac4d-a3ae1129b0e7",
                            "name": "post_updated",
                            "type": "boolean",
                            "value": true
                        },
                        {
                            "id": "f709a120-0db7-4b50-82e6-8f1f02352680",
                            "name": "email",
                            "type": "string",
                            "value": "={{ $('Change this for testing').item.json.properties.email }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "ad574631-3799-4f02-96ff-8683dc944331",
            "name": "Set position_updated",
            "type": "n8n-nodes-base.set",
            "position": [
                4020,
                240
            ],
            "parameters": {
                "options": [],
                "assignments": {
                    "assignments": [
                        {
                            "id": "71118d71-0ea6-4b01-ac4d-a3ae1129b0e7",
                            "name": "position_updated",
                            "type": "boolean",
                            "value": true
                        },
                        {
                            "id": "1f0e817d-2ad4-4330-b683-64e31cfa4741",
                            "name": "email",
                            "type": "string",
                            "value": "={{ $('Change this for testing').item.json.properties.email }}"
                        }
                    ]
                }
            },
            "typeVersion": 3.399999999999999911182158029987476766109466552734375
        },
        {
            "id": "157a5e8f-7b42-4115-91a2-2f204cd6d9f6",
            "name": "Generate the email text",
            "type": "n8n-nodes-base.code",
            "position": [
                4460,
                140
            ],
            "parameters": {
                "jsCode": "\/\/ Loop over input items and add a new field called 'myNewField' to the JSON of each one\nlet client_post = []\nlet client_position = []\nfor (const item of $input.all()) {\n  if(item.json.position_updated) {\n    client_position.push(item.json.email)\n  }\n  if(item.json.post_updated) {\n    client_post.push(item.json.email)\n  }\n}\nlet text = ''\nif (client_post.length > 0) {\n  text = text + 'There has been a post update for the following clients:\\n'\n  text = text + client_post.join(\"\\n\") + \"\\n\";\n}\nif (client_position.length > 0) {\n  text = text + 'There has been a position update for the following clients:\\n'\n  text = text + client_position.join(\"\\n\") + \"\\n\";\n}\n\nreturn {text};"
            },
            "typeVersion": 2
        },
        {
            "id": "0735e123-47ed-4b3c-9aa8-cc7d2f982e4b",
            "name": "Merge on email",
            "type": "n8n-nodes-base.merge",
            "position": [
                4240,
                140
            ],
            "parameters": {
                "mode": "combine",
                "options": [],
                "joinMode": "keepEverything",
                "fieldsToMatchString": "email"
            },
            "typeVersion": 3.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "88717813-9e07-4984-8e8b-7772f7c7a0e7",
            "name": "Split Out owners",
            "type": "n8n-nodes-base.splitOut",
            "position": [
                500,
                40
            ],
            "parameters": {
                "options": [],
                "fieldToSplitOut": "results"
            },
            "typeVersion": 1
        },
        {
            "id": "5799995c-659e-4732-a35b-893692d95509",
            "name": "Get current owner",
            "type": "n8n-nodes-base.filter",
            "position": [
                720,
                40
            ],
            "parameters": {
                "options": [],
                "conditions": {
                    "options": {
                        "version": 2,
                        "leftValue": "",
                        "caseSensitive": true,
                        "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                        {
                            "id": "7c6aec6e-66a9-4739-8a59-28f2ab1c4a26",
                            "operator": {
                                "type": "string",
                                "operation": "equals"
                            },
                            "leftValue": "={{ $json.email }}",
                            "rightValue": "={{ $('Set data here').first().json.email }}"
                        }
                    ]
                }
            },
            "typeVersion": 2.20000000000000017763568394002504646778106689453125
        },
        {
            "id": "637b821f-8051-4e91-a58e-85dc7e136467",
            "name": "Sticky Note2",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                880,
                -260
            ],
            "parameters": {
                "color": 4,
                "width": 230,
                "height": 460,
                "content": "## Calling a Sub-workflow\nFor lisibility only\n"
            },
            "typeVersion": 1
        },
        {
            "id": "3bda132e-73a3-4af0-bb43-ff52f31f5a90",
            "name": "Sticky Note3",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                1120,
                -260
            ],
            "parameters": {
                "color": 4,
                "width": 190,
                "height": 460,
                "content": "## For testing\nWe recommend to filter a small number of clients here\n"
            },
            "typeVersion": 1
        },
        {
            "id": "13fb80f1-d685-4998-a534-41a0f944b6e8",
            "name": "Sticky Note4",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                1320,
                -260
            ],
            "parameters": {
                "color": 4,
                "width": 430,
                "height": 460,
                "content": "## Preparing the Google sheet\n- Create an entry for each client with his email\n- Get rows for later comparison\n\n"
            },
            "typeVersion": 1
        },
        {
            "id": "54a51950-a284-435e-8a2b-bdc0ebace3c9",
            "name": "Sticky Note5",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                3080,
                -240
            ],
            "parameters": {
                "color": 4,
                "width": 1090,
                "height": 660,
                "content": "## Adding other tests\nHere you can set other tests like:\n- New comments in LinkedIn\n- Hubspot activities\n- Hubspot updates\netc.\n\n"
            },
            "typeVersion": 1
        },
        {
            "id": "4b197665-b31c-4fa2-8934-5b72468ca2e9",
            "name": "Sticky Note6",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                1960,
                -240
            ],
            "parameters": {
                "color": 4,
                "width": 1090,
                "height": 660,
                "content": "## Searching for the LinkedIn URL\n- Set here you rapid API key\n- If we find the URL, searches for more info about the client\n"
            },
            "typeVersion": 1
        },
        {
            "id": "665fb602-dc0a-432f-a087-ce6097f58937",
            "name": "Sticky Note7",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                4200,
                -240
            ],
            "parameters": {
                "color": 4,
                "width": 670,
                "height": 660,
                "content": "## Generating the alert email\n\n"
            },
            "typeVersion": 1
        },
        {
            "id": "d6789f6a-aa62-44fd-9314-fc0157b6dcd8",
            "name": "Sticky Note10",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -220,
                400
            ],
            "parameters": {
                "color": 5,
                "width": 1570,
                "height": 460,
                "content": "## Get all clients for this owner\nAs we are limited to 200 clients by the Hubsot API, we have to loop to get all of them\n\n"
            },
            "typeVersion": 1
        },
        {
            "id": "d9a5cc09-7e4f-488a-a3dc-6a27361d9d0b",
            "name": "Sticky Note8",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -200,
                -480
            ],
            "parameters": {
                "width": 640,
                "height": 200,
                "content": "## Contact me\n- If you need any modification to this workflow\n- if you need some help with this workflow\n- Or if you need any workflow in n8n, Make, or Langchain \/ Langgraph\n\nWrite to me: [thomas@pollup.net](mailto:thomas@pollup.net)"
            },
            "typeVersion": 1
        }
    ],
    "connections": {
        "If": {
            "main": [
                [
                    {
                        "node": "Merge al the entries",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "Get list of clients for owner",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Edit": {
            "main": [
                [
                    {
                        "node": "Get list of clients for owner",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Split Out1": {
            "main": [
                []
            ]
        },
        "if new post": {
            "main": [
                [
                    {
                        "node": "Update last post",
                        "type": "main",
                        "index": 0
                    }
                ],
                []
            ]
        },
        "Get last post": {
            "main": [
                [
                    {
                        "node": "Set last_post",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Set data here": {
            "main": [
                [
                    {
                        "node": "Get list of owners",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Set last_post": {
            "main": [
                [
                    {
                        "node": "if new post",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Increment Page": {
            "main": [
                [
                    {
                        "node": "If",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Merge on email": {
            "main": [
                [
                    {
                        "node": "Generate the email text",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "if new position": {
            "main": [
                [
                    {
                        "node": "Updates last position",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Merge profileURL": {
            "main": [
                [
                    {
                        "node": "Search for user by link",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Set post_updated": {
            "main": [
                [
                    {
                        "node": "Merge on email",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Split Out owners": {
            "main": [
                [
                    {
                        "node": "Get current owner",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Update last post": {
            "main": [
                [
                    {
                        "node": "Set post_updated",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get current owner": {
            "main": [
                [
                    {
                        "node": "Get list of clients",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Set last_position": {
            "main": [
                [
                    {
                        "node": "if new position",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get list of owners": {
            "main": [
                [
                    {
                        "node": "Split Out owners",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get list of clients": {
            "main": [
                [
                    {
                        "node": "Change this for testing",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Set the profile URL": {
            "main": [
                [
                    {
                        "node": "Merge profileURL",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Merge al the entries": {
            "main": [
                [
                    {
                        "node": "Split Out1",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Set position_updated": {
            "main": [
                [
                    {
                        "node": "Merge on email",
                        "type": "main",
                        "index": 1
                    }
                ]
            ]
        },
        "Set the profile URL1": {
            "main": [
                [
                    {
                        "node": "Merge profileURL",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Updates last position": {
            "main": [
                [
                    {
                        "node": "Set position_updated",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get rows from document": {
            "main": [
                [
                    {
                        "node": "If linkedin url is empty",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Profile URL not found?": {
            "main": [
                [
                    {
                        "node": "Do nothing",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "Set the profile URL",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Change this for testing": {
            "main": [
                [
                    {
                        "node": "Create entry with email",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Create entry with email": {
            "main": [
                [
                    {
                        "node": "Get rows from document",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Generate the email text": {
            "main": [
                [
                    {
                        "node": "Gmail",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Search for user by link": {
            "main": [
                [
                    {
                        "node": "Get last post",
                        "type": "main",
                        "index": 0
                    },
                    {
                        "node": "Set last_position",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "If linkedin url is empty": {
            "main": [
                [
                    {
                        "node": "Search for user profile by names",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "Set the profile URL1",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get list of clients for owner": {
            "main": [
                [
                    {
                        "node": "Increment Page",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Search for user profile by names": {
            "main": [
                [
                    {
                        "node": "Profile URL not found?",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "When Executed by Another Workflow": {
            "main": [
                [
                    {
                        "node": "Edit",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "When clicking \u2018Test workflow\u2019": {
            "main": [
                [
                    {
                        "node": "Set data here",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        }
    }
}
Back to Workflows

Related Workflows

Splitout Schedule Automation Scheduled
View
High-Level Service Page SEO Blueprint Report
View
Receive updates for support in Zendesk
View
Telegram Code Automation Webhook
View
Splitout Code Automation Webhook
View
Youtube Discord Bot
View
Code Filter Create Scheduled
View
Process
View
Telegram Splitout Automation Webhook
View
HTTP Filter Automation Scheduled
View