{"meta":{"instanceId":"workflow-e342aacb","versionId":"1.0.0","createdAt":"2025-09-29T07:07:45.115570","updatedAt":"2025-09-29T07:07:45.115679","owner":"n8n-user","license":"MIT","category":"automation","status":"active","priority":"high","environment":"production"},"nodes":[{"id":"0bd18974-8414-4b83-b3fb-85d2f6a74164","name":"Create database page","type":"n8n-nodes-base.notion","position":[1220,400],"parameters":{"title":"={{$json[\"body\"][\"issue\"][\"title\"]}}","resource":"databasePage","databaseId":"5026700b-6693-473a-8100-8cc6ddef62a6","propertiesUi":{"propertyValues":[{"key":"YOUR_CREDENTIAL_HERE","numberValue":"={{$node[\"Trigger on issues\"].json[\"body\"][\"issue\"][\"id\"]}}"},{"key":"YOUR_CREDENTIAL_HERE","urlValue":"{{ $env.BASE_URL }}"}]}},"credentials":{"notionApi":{"id":"{{ $credentials.notionApi.id }}","name":"[UPDATE ME]"}},"typeVersion":2,"notes":"This notion node performs automated tasks as part of the workflow."},{"id":"dfce23fd-7ff8-42d1-9544-694345156080","name":"Note","type":"n8n-nodes-base.stickyNote","position":[1220,800],"parameters":{"content":"## IF & Switch\nDepends on what action was taken on an issue in GitHub."},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"577e0d7a-0539-414f-8ec8-00ce12807d5b","name":"Find database page","type":"n8n-nodes-base.notion","position":[1400,600],"parameters":{"options":{},"resource":"databasePage","operation":"getAll","returnAll":true,"databaseId":"5026700b-6693-473a-8100-8cc6ddef62a6","filterJson":"={{$node[\"Create custom Notion filters\"].json[\"notionfilter\"]}}","filterType":"json"},"credentials":{"notionApi":{"id":"{{ $credentials.notionApi.id }}","name":"[UPDATE ME]"}},"typeVersion":2,"notes":"This notion node performs automated tasks as part of the workflow."},{"id":"91b0586c-eb08-41d0-bbb0-8a03c4a0ac3a","name":"Switch","type":"n8n-nodes-base.switch","position":[1580,600],"parameters":{"rules":{"rules":[{"value2":"edited"},{"output":1,"value2":"deleted"},{"output":2,"value2":"closed"},{"output":3,"value2":"reopened"}]},"value1":"={{$node[\"Trigger on issues\"].json[\"body\"][\"action\"]}}","dataType":"string"},"typeVersion":1,"notes":"This switch node performs automated tasks as part of the workflow."},{"id":"5262e14e-adc2-45d1-9e3f-c0eba013077a","name":"If Node","type":"n8n-nodes-base.if","position":[1040,500],"parameters":{"conditions":{"string":[{"value1":"={{$node[\"Trigger on issues\"].json[\"body\"][\"action\"]}}","value2":"opened"}]}},"typeVersion":1,"notes":"This if node performs automated tasks as part of the workflow."},{"id":"735ef0b3-70c3-4a88-ad02-35edf8f749c4","name":"Edit issue","type":"n8n-nodes-base.notion","position":[1760,360],"parameters":{"pageId":"={{ $node[\"Find database page\"].json[\"id\"] }}","resource":"databasePage","operation":"update","propertiesUi":{"propertyValues":[{"key":"YOUR_CREDENTIAL_HERE","title":"={{$node[\"Trigger on issues\"].json[\"body\"][\"issue\"][\"title\"]}}"}]}},"credentials":{"notionApi":{"id":"{{ $credentials.notionApi.id }}","name":"[UPDATE ME]"}},"typeVersion":2,"notes":"This notion node performs automated tasks as part of the workflow."},{"id":"39b75e78-bd62-40e4-9e88-12c6a1901c34","name":"Delete issue","type":"n8n-nodes-base.notion","position":[1760,520],"parameters":{"pageId":"={{$node[\"Find database page\"].json[\"id\"]}}","operation":"archive"},"credentials":{"notionApi":{"id":"{{ $credentials.notionApi.id }}","name":"[UPDATE ME]"}},"typeVersion":2,"notes":"This notion node performs automated tasks as part of the workflow."},{"id":"d8fee72d-c19d-4b99-85c2-dcc5d4fa6756","name":"Create custom Notion filters","type":"n8n-nodes-base.function","position":[1220,600],"parameters":{"functionCode":"const new_items = [];\nfor (item of $items(\"Trigger on issues\")) {\n\n  // do not process this item if action is created\n  if (item.json[\"body\"][\"action\"] == \"opened\") {\n    continue;\n  }\n\n  // build the output template\n  var new_item = {\n    \"json\": {\n      \"notionfilter\": \"\"\n    }\n  };\n  new_item = JSON.stringify(new_item);\n  new_item = JSON.parse(new_item);\n  new_items.push(new_item);\n\n  // create Notion filter to find specific database page by issue ID\n  notionfilter = {\n    or: [],\n  }\n\n  const filter = {\n    property: 'Issue ID',\n    number: {\n      equals: parseInt(item.json[\"body\"][\"issue\"][\"id\"])\n    }\n  }\n  notionfilter[\"or\"].push(filter);\n\n  new_item.json.notionfilter = JSON.stringify(notionfilter); \n}\n\nreturn new_items;"},"typeVersion":1,"notes":"This function node performs automated tasks as part of the workflow."},{"id":"99c69200-d932-4379-9a36-96cd8420f21c","name":"Close issue","type":"n8n-nodes-base.notion","position":[1760,680],"parameters":{"pageId":"={{$node[\"Find database page\"].json[\"id\"]}}","resource":"databasePage","operation":"update","propertiesUi":{"propertyValues":[{"key":"YOUR_CREDENTIAL_HERE","checkboxValue":true}]}},"credentials":{"notionApi":{"id":"{{ $credentials.notionApi.id }}","name":"[UPDATE ME]"}},"typeVersion":2,"notes":"This notion node performs automated tasks as part of the workflow."},{"id":"3f4b27d3-33ae-44f8-ab18-1c23ae7cf890","name":"Reopen issue","type":"n8n-nodes-base.notion","position":[1760,840],"parameters":{"pageId":"={{$node[\"Find database page\"].json[\"id\"]}}","resource":"databasePage","operation":"update","propertiesUi":{"propertyValues":[{"key":"YOUR_CREDENTIAL_HERE"}]}},"credentials":{"notionApi":{"id":"{{ $credentials.notionApi.id }}","name":"[UPDATE ME]"}},"typeVersion":2,"notes":"This notion node performs automated tasks as part of the workflow."},{"id":"62e1a9d3-3fc6-46de-a048-cf8176f30f94","name":"Trigger on issues","type":"n8n-nodes-base.githubTrigger","position":[860,500],"webhookId":"bc0a0a44-00db-473b-8746-b60b3b36039c","parameters":{"owner":"John-n8n","events":["issues"],"repository":"DemoRepo"},"credentials":{"githubApi":{"id":"{{ $credentials.githubApi.id }}","name":"[UPDATE ME]"}},"typeVersion":1,"notes":"This githubTrigger node performs automated tasks as part of the workflow."},{"id":"error-3fda287f","name":"Error Handler","type":"n8n-nodes-base.stopAndError","typeVersion":1,"position":[1000,400],"parameters":{"message":"Workflow execution error","options":{}}}],"connections":{},"name":"Notion 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: Notion Workflow. This workflow integrates 6 different services: stickyNote, function, githubTrigger, switch, if. It contains 11 nodes and follows best practices for error handling and security.","notes":"Excellent quality workflow: Notion Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}