Workflow: Manualtrigger Workflow
Integrations: googleSheets, httpRequest, if, manualTrigger, noOp, scheduleTrigger, set, splitInBatches, stickyNote, wait

{"meta": {"instanceId": "workflow-37056db8", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:58.950092", "updatedAt": "2025-09-29T07:07:58.950113", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "nodes": [{"id": "f3641141-a880-4400-bad7-909558848c20", "name": "When clicking \"Test workflow\"", "type": "n8n-nodes-base.manualTrigger", "position": [2260, 820], "parameters": {}, "typeVersion": 1, "notes": "This manualTrigger node performs automated tasks as part of the workflow."}, {"id": "7b1ddbd1-f918-4ef9-a05e-2c02e6de75df", "name": "Sticky Note", "type": "n8n-nodes-base.stickyNote", "position": [380, 580], "parameters": {"color": 4, "width": 1289, "height": 2698, "content": "=======================================\n         WORKFLOW DETAILS & GUIDELINES\n=======================================\nName:\n    LinkedIn Enrichment & Ice Breaker Generator\n\nPurpose:\n    Automate the process of enriching LinkedIn profiles using Bright Data,\n    generate personalized ice breakers with an LLM, and update Google Sheets.\n\nTools Needed:\n    - n8n Nodes:\n        \u2022 Manual Trigger or Schedule Trigger\n        \u2022 Set\n        \u2022 SplitInBatches\n        \u2022 HTTP Request\n        \u2022 If\n        \u2022 Wait\n        \u2022 Google Sheets\n        \u2022 LangChain LLM (Claude via Anthropic)\n    - External Services:\n        \u2022 Bright Data (Dataset API)\n        \u2022 Anthropic Claude (Haiku)\n        \u2022 Google Sheets API\n\nAPI Keys & Authentication Required:\n    \u2022 Bright Data API Key\n        \u2192 Used in HTTP Request headers as:\n           `Authorization: Bearer YOUR_BRIGHTDATA_API_KEY`\n    \u2022 Google Sheets OAuth2 Credentials\n        \u2192 Connects n8n to your Google account for reading/writing to Sheets.\n    \u2022 Anthropic API Key\n        \u2192 Used for generating ice breakers via Claude models.\n        \u2192 Must be set in the Anthropic credential section in n8n.\n\nGeneral Guidelines:\n    \u2022 Use descriptive and consistent naming for all nodes.\n    \u2022 Add retry limits to polling loops to avoid infinite cycles.\n    \u2022 Ensure each LinkedIn URL maps to a unique `row_number`.\n    \u2022 Obfuscate any keys before sharing the workflow publicly.\n\nThings to be Aware Of:\n    \u2022 Bright Data may require some delay (via Wait node) before snapshot is ready.\n    \u2022 Retry logic should not exceed API rate limits.\n    \u2022 If snapshot fails or times out, ensure fallback logging is in place.\n    \u2022 Claude model IDs and prompt formats may change \u2014 validate before updates.\n\nAdditional Notes:\n    \u2022 Make a copy of the Google Sheet template before use.\n    \u2022 Replace placeholders in `Authorization` headers and credentials section.\n    \u2022 Use test data first to avoid exhausting API quotas during setup.\n\n=======================================\n\nThis workflow allows you to enrich LinkedIn profiles using Bright Data,\ngenerate AI-written ice breakers with Claude, and log everything into Google Sheets.\n"}, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "215cd515-149b-41b1-adbe-fa203cbc9b5d", "name": "Get rows to enrich", "type": "n8n-nodes-base.googleSheets", "position": [2540, 820], "parameters": {"options": {}, "sheetName": {"__rl": true, "mode": "list", "value": "gid=0", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "input"}, "documentId": {"__rl": true, "mode": "list", "value": "1g8Dum0tfZ1nQdd3b6sLhZX2aMu6FzwoVvD0EAXMpPx8", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "NoFluff-N8N-Sheet-Template-Hyper Personalization"}}, "credentials": {"googleSheetsOAuth2Api": {"id": "gq9mwBL5a74eYjfd", "name": "Google Sheets account"}}, "typeVersion": 4.3, "notes": "This googleSheets node performs automated tasks as part of the workflow."}, {"id": "f140e851-6409-4169-b5af-28ab6f16d99c", "name": "Sticky Note3", "type": "n8n-nodes-base.stickyNote", "position": [3220, 680], "parameters": {"width": 1420, "height": 460, "content": "Personal Data"}, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "8878ae56-0772-498a-b153-b628222f6688", "name": "Sticky Note5", "type": "n8n-nodes-base.stickyNote", "position": [2220, 680], "parameters": {"width": 266.12865147126786, "height": 627.5654650079845, "content": "Run the workflow manually or activate it to run on schedule\n"}, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "df3f1f83-1092-40fe-bc5d-301e9a118601", "name": "Sticky Note7", "type": "n8n-nodes-base.stickyNote", "position": [2500, 460], "parameters": {"width": 194.6864335083109, "height": 525.6560478822986, "content": "In this workflow, I use Google Sheets to store the results. \n\nYou can use my template to get started faster:\n\n1. [Click on this link to get the template]({{ $env.WEBHOOK_URL }}\n2. Make a copy of the Sheets\n3. Add the URL to this node and the node **\"Google Sheets - Update Row with data\"**\n\n\n"}, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "1c294196-206a-4add-8d47-8558ba99515d", "name": "Sticky Note9", "type": "n8n-nodes-base.stickyNote", "position": [380, 240], "parameters": {"color": 4, "width": 1280, "height": 320, "content": "=======================================\n            WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n    Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n   - YouTube: {{ $env.WEBHOOK_URL }}\n   - LinkedIn: {{ $env.WEBHOOK_URL }}\n=======================================\n"}, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "3491b2bf-83a0-4966-9ff5-9c7c55f316e0", "name": "Anthropic Chat Model", "type": "n8n-nodes-base.noOp", "position": [4800, 1240], "parameters": {"model": {"__rl": true, "mode": "list", "value": "claude-3-5-haiku-20241022", "cachedResultName": "Claude 3.5 Haiku"}, "options": {}}, "typeVersion": 1.3, "notes": "This lmChatAnthropic node performs automated tasks as part of the workflow."}, {"id": "66b79bfc-3447-4b42-9617-308e490079bb", "name": "Sticky Note4", "type": "n8n-nodes-base.stickyNote", "position": [4720, 880], "parameters": {"width": 1120, "height": 580, "content": "ICE BREAKER\n"}, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "7557e53f-b898-4831-a52e-be9eeb0f4964", "name": "Sticky Note1", "type": "n8n-nodes-base.stickyNote", "position": [2940, 560], "parameters": {"color": 4, "width": 2980, "height": 1000, "content": "LOOP"}, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "0119ee4c-bc70-4aef-84e0-881cdea57aa9", "name": "Basic LLM Chain- Ice Breaker", "type": "n8n-nodes-base.noOp", "position": [4920, 900], "parameters": {"text": "=Help me with writing a witty Ice breaker to try to persuade  {{ $json.name }} from{{ $('BrightData_Get_Linkedin').item.json.city }}. His About section in his Linkedin profile says:{{ $('BrightData_Get_Linkedin').item.json.about }}. \nHe also had a recent post about:{{ $('BrightData_Get_Linkedin').item.json.posts[0].title }}\n\nMake it 4 lines maximum. Focus more on his recent post, not the about. Just to make it feel personalized yet respectful and not creepy.\n\nWRITE THE ICE BREAKER Straight away. Dont write \"here's a draft\" or any other text before your actual response.", "promptType": "define"}, "retryOnFail": true, "typeVersion": 1.6, "notes": "This chainLlm node performs automated tasks as part of the workflow."}, {"id": "e3965132-4d21-4252-ab26-525128d79d29", "name": "BrightData_Get_Linkedin", "type": "n8n-nodes-base.httpRequest", "position": [4120, 740], "parameters": {"url": "{{ $env.BASE_URL }}", "options": {}, "sendQuery": true, "sendHeaders": true, "queryParameters": {"parameters": [{"name": "format", "value": "json"}]}, "headerParameters": {"parameters": [{"name": "Authorization", "value": "Bearer <BRIGHT_DATA_API_KEY>"}]}}, "typeVersion": 4.2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}, {"id": "0e55b67e-7ddb-4431-8250-59be59c6c557", "name": "Adjust_input_for_loop", "type": "n8n-nodes-base.set", "position": [2740, 820], "parameters": {"options": {}, "assignments": {"assignments": [{"id": "fcc97354-b9f6-4459-a004-46e87902c77c", "name": "person_input", "type": "string", "value": "={{ $json.Linkedin_URL_Person }}"}, {"id": "e5415c49-5204-45b1-a0e9-814157127b12", "name": "row_number", "type": "number", "value": "={{ $json.row_number }}"}]}}, "typeVersion": 3.3, "notes": "This set node performs automated tasks as part of the workflow."}, {"id": "0cc85426-64f7-41f8-bd9a-215aaaad3299", "name": "HTTP_Request_Post_Request_BrightData", "type": "n8n-nodes-base.httpRequest", "position": [3300, 740], "parameters": {"url": "{{ $env.API_BASE_URL }}", "method": "POST", "options": {}, "jsonBody": "=[\n  {\n    \"url\": \"{{ $json.person_input }}\"\n  }\n]", "sendBody": true, "sendQuery": true, "sendHeaders": true, "specifyBody": "json", "queryParameters": {"parameters": [{"name": "dataset_id", "value": "gd_l1viktl72bvl7bjuj0"}, {"name": "include_errors", "value": "true"}]}, "headerParameters": {"parameters": [{"name": "Authorization", "value": "Bearer <BRIGHT_DATA_API_KEY>"}]}}, "typeVersion": 4.2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}, {"id": "851b23e0-6a1b-4a47-95e9-d2f769243a57", "name": "Wait_For_API_Call_Results", "type": "n8n-nodes-base.wait", "position": [3500, 740], "webhookId": "8005a2b3-2195-479e-badb-d90e4240e699", "parameters": {"amount": 10}, "executeOnce": false, "typeVersion": 1.1, "notes": "This wait node performs automated tasks as part of the workflow."}, {"id": "294a7c03-2268-4d7a-b4e7-a52faa78d929", "name": "API_Call_Snapshot_Progress", "type": "n8n-nodes-base.httpRequest", "position": [3660, 840], "parameters": {"url": "{{ $env.BASE_URL }}", "options": {}, "sendHeaders": true, "headerParameters": {"parameters": [{"name": "Authorization", "value": "Bearer <Bright_Data_API_KEY>"}]}}, "typeVersion": 4.2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}, {"id": "d568403b-c323-4798-b7e5-e4a89dfe7830", "name": "IF-Checking_Status_API_Call", "type": "n8n-nodes-base.if", "position": [3860, 900], "parameters": {"options": {}, "conditions": {"options": {"version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict"}, "combinator": "and", "conditions": [{"id": "7932282b-71bb-4bbb-ab73-4978e554de7e", "operator": {"name": "filter.operator.equals", "type": "string", "operation": "equals"}, "leftValue": "={{ $json.status }}", "rightValue": "running"}]}}, "typeVersion": 2.2, "notes": "This if node performs automated tasks as part of the workflow."}, {"id": "b44b5f4b-8aef-4ea3-bbd7-1e72548dda64", "name": "Google Sheets - Update Row with data From API", "type": "n8n-nodes-base.googleSheets", "position": [4500, 940], "parameters": {"columns": {"value": {"city": "={{ $json.city }}", "name": "={{ $json.name }}", "about": "={{ $json.about }}", "row_number": "={{ $('Loop Over Items- All Prospects').item.json.row_number }}", "country_code": "={{ $json.country_code }}", "Linkedin_URL_Person": "{{ $env.BASE_URL }}", "current_company.name": "={{ $json.current_company.name }}"}, "schema": [{"id": "Linkedin_URL_Person", "type": "string", "display": true, "removed": false, "required": false, "displayName": "Linkedin_URL_Person", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "name", "type": "string", "display": true, "removed": false, "required": false, "displayName": "name", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "city", "type": "string", "display": true, "removed": false, "required": false, "displayName": "city", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "country_code", "type": "string", "display": true, "removed": false, "required": false, "displayName": "country_code", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Position", "type": "string", "display": true, "removed": false, "required": false, "displayName": "Position", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "about", "type": "string", "display": true, "removed": false, "required": false, "displayName": "about", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "current_company.name", "type": "string", "display": true, "removed": false, "required": false, "displayName": "current_company.name", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Post 1", "type": "string", "display": true, "removed": false, "required": false, "displayName": "Post 1", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Post 2", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Post 2", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Post 3", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Post 3", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Ice Breaker 1", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Ice Breaker 1", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Ice Breaker 2", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Ice Breaker 2", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "row_number", "type": "string", "display": true, "removed": false, "readOnly": true, "required": false, "displayName": "row_number", "defaultMatch": false, "canBeUsedToMatch": true}], "mappingMode": "defineBelow", "matchingColumns": ["row_number"], "attemptToConvertTypes": false, "convertFieldsToString": false}, "options": {}, "operation": "update", "sheetName": {"__rl": true, "mode": "list", "value": "gid=0", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "input"}, "documentId": {"__rl": true, "mode": "list", "value": "1_jbr5zBllTy_pGbogfGSvyv1_0a77I8tU-Ai7BjTAw4", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "NoFluff-N8N-Sheet-Template"}}, "typeVersion": 4.3, "alwaysOutputData": true, "notes": "This googleSheets node performs automated tasks as part of the workflow."}, {"id": "081f9e1d-6325-4645-bb0c-368a8ac3be99", "name": "Google Sheets - Update Row with Ice Breaker", "type": "n8n-nodes-base.googleSheets", "position": [5400, 1340], "parameters": {"columns": {"value": {"row_number": "={{ $('Loop Over Items- All Prospects').item.json.row_number }}", "Ice Breaker 1": "={{ $json.text }}"}, "schema": [{"id": "Linkedin_URL_Person", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Linkedin_URL_Person", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "name", "type": "string", "display": true, "removed": true, "required": false, "displayName": "name", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "city", "type": "string", "display": true, "removed": true, "required": false, "displayName": "city", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "country_code", "type": "string", "display": true, "removed": true, "required": false, "displayName": "country_code", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Position", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Position", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "about", "type": "string", "display": true, "removed": true, "required": false, "displayName": "about", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "current_company.name", "type": "string", "display": true, "removed": true, "required": false, "displayName": "current_company.name", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Post 1", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Post 1", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Post 2", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Post 2", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Post 3", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Post 3", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Ice Breaker 1", "type": "string", "display": true, "removed": false, "required": false, "displayName": "Ice Breaker 1", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "Ice Breaker 2", "type": "string", "display": true, "removed": true, "required": false, "displayName": "Ice Breaker 2", "defaultMatch": false, "canBeUsedToMatch": true}, {"id": "row_number", "type": "string", "display": true, "removed": false, "readOnly": true, "required": false, "displayName": "row_number", "defaultMatch": false, "canBeUsedToMatch": true}], "mappingMode": "defineBelow", "matchingColumns": ["row_number"], "attemptToConvertTypes": false, "convertFieldsToString": false}, "options": {}, "operation": "update", "sheetName": {"__rl": true, "mode": "list", "value": "gid=0", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "input"}, "documentId": {"__rl": true, "mode": "list", "value": "1_jbr5zBllTy_pGbogfGSvyv1_0a77I8tU-Ai7BjTAw4", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "NoFluff-N8N-Sheet-Template"}}, "typeVersion": 4.3, "alwaysOutputData": true, "notes": "This googleSheets node performs automated tasks as part of the workflow."}, {"id": "7709c869-5283-4760-b929-fde27167f040", "name": "Run Workflow on a certain Schedule", "type": "n8n-nodes-base.scheduleTrigger", "position": [2260, 1000], "parameters": {"rule": {"interval": [{}]}}, "typeVersion": 1.2, "notes": "This scheduleTrigger node performs automated tasks as part of the workflow."}, {"id": "84e08531-b548-43f2-a17a-b2809f833d32", "name": "Loop Over Items- All Prospects", "type": "n8n-nodes-base.splitInBatches", "position": [2980, 720], "parameters": {"options": {}}, "typeVersion": 3, "notes": "This splitInBatches node performs automated tasks as part of the workflow."}], "pinData": {}, "connections": {"e3965132-4d21-4252-ab26-525128d79d29": {"main": [[{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-2f86a93c", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-4b693cdb", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-95b693da", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-61ed00f0", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-f789d74b", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-a4323ee6", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-1eae6f3b", "type": "main", "index": 0}], [{"node": "error-handler-e3965132-4d21-4252-ab26-525128d79d29-ba46b15c", "type": "main", "index": 0}]]}, "0cc85426-64f7-41f8-bd9a-215aaaad3299": {"main": [[{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-f2a56ccd", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-1276e8b0", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-08b3b1c4", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-206fb705", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-cda35a37", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-5c293c09", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-18a8883d", "type": "main", "index": 0}], [{"node": "error-handler-0cc85426-64f7-41f8-bd9a-215aaaad3299-8e871612", "type": "main", "index": 0}]]}, "294a7c03-2268-4d7a-b4e7-a52faa78d929": {"main": [[{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-b026c255", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-f16438bd", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-f92c860d", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-e4867d02", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-556cba16", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-4575d3b5", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-a46396bb", "type": "main", "index": 0}], [{"node": "error-handler-294a7c03-2268-4d7a-b4e7-a52faa78d929-3d1761da", "type": "main", "index": 0}]]}, "215cd515-149b-41b1-adbe-fa203cbc9b5d": {"main": [[{"node": "error-handler-215cd515-149b-41b1-adbe-fa203cbc9b5d-f17761a4", "type": "main", "index": 0}]]}, "b44b5f4b-8aef-4ea3-bbd7-1e72548dda64": {"main": [[{"node": "error-handler-b44b5f4b-8aef-4ea3-bbd7-1e72548dda64-a28d13ba", "type": "main", "index": 0}]]}, "081f9e1d-6325-4645-bb0c-368a8ac3be99": {"main": [[{"node": "error-handler-081f9e1d-6325-4645-bb0c-368a8ac3be99-697d681c", "type": "main", "index": 0}]]}}, "name": "Manualtrigger Workflow", "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "description": "Automated workflow: Manualtrigger Workflow. This workflow integrates 12 different services: stickyNote, httpRequest, wait, scheduleTrigger, chainLlm. It contains 30 nodes and follows best practices for error handling and security.", "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "notes": "Excellent quality workflow: Manualtrigger Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}