{"nodes":[{"id":"a39274d0-6709-4e66-95a7-8c0fc4c0e8b1","name":"if after unsnooze date","type":"n8n-nodes-base.if","position":[1840,500],"parameters":{"conditions":{"dateTime":[{"value1":"={{ DateTime.now() }}","value2":"={{ $json.unsnoozeDate }}"}]}},"typeVersion":1,"notes":"This if node performs automated tasks as part of the workflow."},{"id":"a4e2d915-4714-41ea-8995-76b7198df675","name":"at 5am","type":"n8n-nodes-base.scheduleTrigger","position":[780,500],"parameters":{"rule":{"interval":[{"triggerAtHour":5}]}},"typeVersion":1.1,"notes":"This scheduleTrigger node performs automated tasks as part of the workflow."},{"id":"7ad8e2f6-0499-4537-8325-9dffc2d7ea3c","name":"every 5 min","type":"n8n-nodes-base.scheduleTrigger","position":[780,280],"parameters":{"rule":{"interval":[{"field":"minutes"}]}},"typeVersion":1.1,"notes":"This scheduleTrigger node performs automated tasks as part of the workflow."},{"id":"370f380a-923b-4e4f-b025-9e7723662083","name":"Get snoozed tasks","type":"n8n-nodes-base.todoist","position":[980,500],"parameters":{"filters":{"projectId":"2325216129"},"operation":"getAll","returnAll":true},"credentials":{"todoistApi":{"id":"{{ $credentials.todoistApi.id }}","name":"Todoist account"}},"retryOnFail":true,"typeVersion":2,"waitBetweenTries":5000,"notes":"This todoist node performs automated tasks as part of the workflow."},{"id":"f239a87d-0229-4964-bca0-75bbf371626b","name":"if task is not a subtask","type":"n8n-nodes-base.if","position":[1200,500],"parameters":{"conditions":{"number":[{"value1":"={{ $json.parent_id }}","operation":"isEmpty"}]}},"typeVersion":1,"notes":"This if node performs automated tasks as part of the workflow."},{"id":"b9b29371-254f-45d1-846c-c2db7efae907","name":"If task has due date","type":"n8n-nodes-base.if","position":[1420,500],"parameters":{"conditions":{"boolean":[{"value1":"={{ !$json.due }}"}]}},"typeVersion":1,"notes":"This if node performs automated tasks as part of the workflow."},{"id":"1d1fe683-68b5-4a9c-af29-b20a01c2473b","name":"Get date to unsnooze","type":"n8n-nodes-base.dateTime","position":[1640,500],"parameters":{"options":{"includeInputFields":true},"duration":3,"magnitude":"={{ $json.due.date }}","operation":"subtractFromDate","outputFieldName":"unsnoozeDate"},"typeVersion":2,"notes":"This dateTime node performs automated tasks as part of the workflow."},{"id":"9e0e3241-d2fd-4bc4-9273-aa5237cbeaa4","name":"Get inbox tasks to snooze","type":"n8n-nodes-base.todoist","position":[980,280],"parameters":{"filters":{"projectId":"938017196"},"operation":"getAll","returnAll":true},"credentials":{"todoistApi":{"id":"{{ $credentials.todoistApi.id }}","name":"Todoist account"}},"retryOnFail":true,"typeVersion":2,"waitBetweenTries":5000,"notes":"This todoist node performs automated tasks as part of the workflow."},{"id":"90e83f5f-dd9f-431d-92b5-cd52a792dee2","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[1220,220],"parameters":{"color":5,"width":390.83694011071975,"height":182.09360845495712,"content":"### 👨‍🎤 Setup\n1. Add your Todoist creds\n2. Create a Todoist project called `snoozed`\n3. Set the project ids in the relevant nodes\n4. Add due dates to your tasks in Inbox. Watch them disappear to `snoozed`. Set their date to tomorrow, watch it return to inbox."},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"c7a6b401-f518-45ba-a185-c8bf0cd92394","name":"Set inbox project id","type":"n8n-nodes-base.set","position":[2060,420],"parameters":{"fields":{"values":[{"name":"target_project_id","type":"numberValue","numberValue":"2329427682"}]},"options":{}},"typeVersion":3.2,"notes":"This set node performs automated tasks as part of the workflow."},{"id":"22982318-5036-490a-ba3c-d40db8c3dc89","name":"If not same project","type":"n8n-nodes-base.filter","position":[2280,500],"parameters":{"conditions":{"number":[{"value1":"={{ parseInt($json.target_project_id) }}","value2":"={{ parseInt($json.project_id) }}","operation":"notEqual"}]}},"typeVersion":1,"notes":"This filter node performs automated tasks as part of the workflow."},{"id":"62009b22-d0e3-40a0-b7f9-88dc2ec02284","name":"Set args to move","type":"n8n-nodes-base.set","position":[2480,500],"parameters":{"fields":{"values":[{"name":"args","type":"objectValue","objectValue":"={ id: {{ $json.id }}, project_id: {{ $json.target_project_id }} }"},{"name":"type","stringValue":"item_move"}]},"include":"none","options":{}},"typeVersion":3.2,"notes":"This set node performs automated tasks as part of the workflow."},{"id":"4d628334-12a3-451f-b49e-ce749241e411","name":"Generate unique uuid for move","type":"n8n-nodes-base.crypto","position":[2680,500],"parameters":{"action":"generate","dataPropertyName":"uuid"},"typeVersion":1,"notes":"This crypto node performs automated tasks as part of the workflow."},{"id":"8b6bf7ae-6d15-473d-8f00-5aaa4ea7d2f3","name":"Merge all items into a list","type":"n8n-nodes-base.itemLists","position":[2880,500],"parameters":{"options":{},"aggregate":"aggregateAllItemData","operation":"concatenateItems","destinationFieldName":"commands"},"typeVersion":3.1,"notes":"This itemLists node performs automated tasks as part of the workflow."},{"id":"7882c3c6-0d24-4fe2-99b6-3e878e4d0dea","name":"Move the tasks","type":"n8n-nodes-base.httpRequest","position":[3080,500],"parameters":{"url":"{{ $env.API_BASE_URL }}","method":"POST","options":{},"sendBody":true,"contentType":"form-urlencoded","authentication":"{{ $credentials.predefinedCredentialType }}","bodyParameters":{"parameters":[{"name":"commands","value":"={{ JSON.stringify($json.commands) }}"}]},"nodeCredentialType":"YOUR_CREDENTIAL_HERE"},"credentials":{"todoistApi":{"id":"{{ $credentials.todoistApi.id }}","name":"Todoist account"}},"typeVersion":4.1,"notes":"This httpRequest node performs automated tasks as part of the workflow."},{"id":"259c337b-38f6-4c2a-8e23-9fe5d154a2aa","name":"Set snoozed project id","type":"n8n-nodes-base.set","position":[2060,600],"parameters":{"fields":{"values":[{"name":"target_project_id","type":"numberValue","numberValue":"2329427688"}]},"options":{}},"typeVersion":3.2,"notes":"This set node performs automated tasks as part of the workflow."},{"id":"2795502f-cdeb-4b94-a6fe-ef3657bdc091","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[2080,780],"parameters":{"color":7,"width":202,"height":100,"content":"👆 Set `snoozed` project id here. You can find it in the URL. "},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"ef6c23d5-386e-48c2-a2ed-eea67fe1f117","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[2060,260],"parameters":{"color":7,"width":202,"height":100,"content":"👇🏽 Set `inbox` project id here. You can find it in the URL. "},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."},{"id":"6727670f-b340-47cd-b86a-632ef29e2135","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[1660,660],"parameters":{"color":7,"width":202,"height":100,"content":"👆🏽 Adjust here the timeline to return tasks to Inbox (here set to 3 days before due date)"},"typeVersion":1,"notes":"This stickyNote node performs automated tasks as part of the workflow."}],"connections":{"Move the tasks":{"main":[[],[],[],[],[],[],[],[],[]]}},"name":"If 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: If Workflow. This workflow integrates 11 different services: stickyNote, filter, itemLists, httpRequest, scheduleTrigger. It contains 21 nodes and follows best practices for error handling and security.","meta":{"instanceId":"workflow-31347575","versionId":"1.0.0","createdAt":"2025-09-29T07:07:44.111700","updatedAt":"2025-09-29T07:07:44.111710","owner":"n8n-user","license":"MIT","category":"automation","status":"active","priority":"high","environment":"production"},"notes":"Excellent quality workflow: If Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}