{ "meta": { "instanceId": "workflow-2159ed30", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:54.808267", "updatedAt": "2025-09-29T07:07:54.808284", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production" }, "nodes": [ { "id": "0db90229-9929-4d48-93f0-2425c83993ea", "name": "POST", "type": "n8n-nodes-base.webhook", "position": [ 780, 280 ], "webhookId": "0626e4cc-e132-4024-9ab9-443a9ac7b133", "parameters": { "path": "1c04b027-39d2-491a-a9c6-194289fe400c", "options": {}, "httpMethod": "POST" }, "typeVersion": 1, "notes": "This webhook node performs automated tasks as part of the workflow." }, { "id": "5441fa4b-adea-4cdc-a224-b4240e3711ea", "name": "Notion", "type": "n8n-nodes-base.notion", "position": [ 1080, 280 ], "parameters": { "title": "={{ $json.body.url }}", "options": {}, "resource": "databasePage", "databaseId": { "__rl": true, "mode": "list", "value": "1420d3ae-bedc-4d23-a932-b402814db9d1", "cachedResultUrl": "{{ $env.WEBHOOK_URL }}", "cachedResultName": "Bookmarks" } }, "typeVersion": 2.1, "notes": "This notion node performs automated tasks as part of the workflow." }, { "id": "9cde5c9e-743a-4368-be53-d8fb57e2da01", "name": "Sticky Note", "type": "n8n-nodes-base.stickyNote", "position": [ 720, 100 ], "parameters": { "color": 7, "width": 223, "height": 350, "content": "## Webhook Trigger\nThis node listens for the event on the bookmarklet we are going to create.\nThe settings for this should be POST " }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "0763df72-8eb0-4fe5-9dbb-f5cc12445e46", "name": "Sticky Note1", "type": "n8n-nodes-base.stickyNote", "position": [ 1000, 100 ], "parameters": { "color": 7, "width": 463, "height": 349, "content": "## Adding data to notion\nGo to your notion database and add a new database that shall be recording all your bookmarks. Make sure to add your application. (If you do not add this your bookmark wont be saved)\n\nTest the webhook with to see how the urls are formated in the database\n" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." } ], "pinData": {}, "connections": { "0db90229-9929-4d48-93f0-2425c83993ea": { "main": [ [ { "node": "error-handler-0db90229-9929-4d48-93f0-2425c83993ea", "type": "main", "index": 0 } ], [ { "node": "error-handler-0db90229-9929-4d48-93f0-2425c83993ea-bc24ed11", "type": "main", "index": 0 } ], [ { "node": "error-handler-0db90229-9929-4d48-93f0-2425c83993ea-834645f3", "type": "main", "index": 0 } ], [ { "node": "error-handler-0db90229-9929-4d48-93f0-2425c83993ea-12f3cc6b", "type": "main", "index": 0 } ], [ { "node": "error-handler-0db90229-9929-4d48-93f0-2425c83993ea-916a8358", "type": "main", "index": 0 } ] ] } }, "name": "Webhook 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: Webhook Workflow. This workflow integrates 4 different services: webhook, stickyNote, stopAndError, notion. It contains 6 nodes and follows best practices for error handling and security.", "tags": [ "automation", "n8n", "production-ready", "excellent", "optimized" ], "notes": "Excellent quality workflow: Webhook Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation." }