{
  "name": "Natural language task management with Todoist and GPT-4o",
  "nodes": [
    {
      "id": "e83836e8-890e-4c64-bec7-6030e118c8f3",
      "name": "Todoist Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        260,
        0
      ]
    },
    {
      "id": "36b24a37-4b11-4f5c-b3dd-a954f6043924",
      "name": "When Executed by Another Workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        0,
        0
      ]
    },
    {
      "id": "f9f428fb-774b-4290-9d9a-cccedf0a3874",
      "name": "Orchestrator",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        260,
        -400
      ]
    },
    {
      "id": "b3ac4991-69da-42c9-bae4-26de2269fb44",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        0,
        -400
      ]
    },
    {
      "id": "6a798f48-c82f-47ea-bf95-9bffa2db62ec",
      "name": "Call Todoist Agent",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        500,
        -180
      ]
    },
    {
      "id": "80dad4ec-d119-4658-805a-26bf750c4def",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        80,
        220
      ]
    },
    {
      "id": "5fe3733a-212a-470a-8aa7-93faa04f5d68",
      "name": "Simple Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        340,
        -180
      ]
    },
    {
      "id": "165ee878-007e-4fff-9d06-0c1b718b7fdb",
      "name": "OpenAI Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        160,
        -180
      ]
    },
    {
      "id": "555662ec-c297-41ea-bd1c-8314fc9d7267",
      "name": "Get All Tasks",
      "type": "n8n-nodes-base.todoistTool",
      "position": [
        280,
        220
      ]
    },
    {
      "id": "13b0cc4d-e965-40ec-87a1-71cf09d2e1b7",
      "name": "Get a Task",
      "type": "n8n-nodes-base.todoistTool",
      "position": [
        440,
        220
      ]
    },
    {
      "id": "0e1ab623-99b2-444c-bfa1-5b9175b48cd7",
      "name": "Create a Task",
      "type": "n8n-nodes-base.todoistTool",
      "position": [
        600,
        220
      ]
    },
    {
      "id": "96fcd691-7931-4567-8827-deab0a982f78",
      "name": "Update a Task",
      "type": "n8n-nodes-base.todoistTool",
      "position": [
        760,
        220
      ]
    },
    {
      "id": "6cc4b5f1-db09-4abd-a7fc-96cfa7abc39a",
      "name": "Mark Task as Done",
      "type": "n8n-nodes-base.todoistTool",
      "position": [
        920,
        220
      ]
    },
    {
      "id": "20471ae9-8cc5-4996-8880-51a2db040be5",
      "name": "Reopen a Task",
      "type": "n8n-nodes-base.todoistTool",
      "position": [
        1080,
        220
      ]
    },
    {
      "id": "6c7ab7dc-075e-49c9-a339-a89a52ce6d6a",
      "name": "Move a Task",
      "type": "n8n-nodes-base.todoistTool",
      "position": [
        1260,
        220
      ]
    },
    {
      "id": "d37afed5-4089-44c4-bd90-deb05e65af2a",
      "name": "Get All Projects",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        280,
        400
      ]
    },
    {
      "id": "c22513f5-71e9-48ce-bce3-a26681e95fae",
      "name": "Get a Project",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        440,
        400
      ]
    },
    {
      "id": "e22a8f09-ab4d-4db5-875f-b47e66139460",
      "name": "Create a Project",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        600,
        400
      ]
    },
    {
      "id": "4002115e-f01e-4f9a-826a-4284bb33e88e",
      "name": "Update a Project",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        760,
        400
      ]
    },
    {
      "id": "82f5b3d9-1444-47a9-b034-0cc296206ec2",
      "name": "Archive a Project",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        920,
        400
      ]
    },
    {
      "id": "43a92f6c-f55c-4cad-bb00-090310e4d4d0",
      "name": "Get Archived Projects",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1080,
        400
      ]
    },
    {
      "id": "71114ba0-5f5b-4033-884a-8f38f8f5d6b1",
      "name": "Unarchive a Project",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        1260,
        400
      ]
    },
    {
      "id": "7092954e-93e1-440f-aa64-60b708ed7443",
      "name": "Get All Sections",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        280,
        580
      ]
    },
    {
      "id": "2a0a5f63-7c3c-40c0-9d86-c7f3f8b2fd15",
      "name": "Get a Section",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        440,
        580
      ]
    },
    {
      "id": "196aa7d8-5830-48fe-bf8b-e6e0ce093417",
      "name": "Create a Section",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        600,
        580
      ]
    },
    {
      "id": "fb63f214-410a-42a8-b0b5-98492f57868f",
      "name": "Update a Section",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        760,
        580
      ]
    },
    {
      "id": "60b3dc22-bf0a-40c5-b373-62163cbe25ec",
      "name": "Delete a Section",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        900,
        580
      ]
    },
    {
      "id": "29aaeb54-4350-4fc6-b8e1-3f7eaed20dba",
      "name": "Get All Labels",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        280,
        760
      ]
    },
    {
      "id": "c868ad86-38c6-4061-aff4-abfa4b665e3e",
      "name": "Get a Label",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        440,
        760
      ]
    },
    {
      "id": "5c3e5bc5-711e-408f-86cd-472f357b2e51",
      "name": "Create a Label",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        600,
        760
      ]
    },
    {
      "id": "4c853013-c820-42c8-a78b-809d86f32ffd",
      "name": "Update a Label",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        760,
        760
      ]
    },
    {
      "id": "9a737bf5-df4d-4790-868c-df0839ea048e",
      "name": "Delete a Label",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        900,
        760
      ]
    },
    {
      "id": "de99b281-e3b4-4e6f-b7c1-f715c9ffac49",
      "name": "Add a Comment",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        280,
        940
      ]
    },
    {
      "id": "1b0d6203-775e-4bba-a880-ebc6acfa5e3d",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -920,
        -460
      ],
      "parameters": {
        "width": 760,
        "height": 1360,
        "content": "# 🪄 Ultimate Personal **Todoist Agent**\n\nTurn natural-language requests into perfectly-organized Todoist tasks—all on autopilot inside **n8n**.\n\n&gt; “Add *Finish quarterly report by Friday afternoon*"
      }
    },
    {
      "id": "cdaf3b99-5b31-4893-b63a-02382e0d88d1",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        -460
      ],
      "parameters": {
        "width": 740,
        "height": 420,
        "content": "*The Orchestrator is an example.* In production you can drop it and simply expose the **Todoist Agent**\nas a tool for any other agent workflow."
      }
    }
  ],
  "connections": {
    "Get a Task": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get a Label": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Move a Task": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Add a Comment": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Create a Task": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get All Tasks": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get a Project": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get a Section": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Reopen a Task": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "Orchestrator",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Update a Task": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Create a Label": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Delete a Label": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get All Labels": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Update a Label": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Create a Project": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Create a Section": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Delete a Section": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get All Projects": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get All Sections": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Update a Project": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Update a Section": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Archive a Project": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Mark Task as Done": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Call Todoist Agent": {
      "ai_tool": [
        [
          {
            "node": "Orchestrator",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Orchestrator",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Unarchive a Project": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get Archived Projects": {
      "ai_tool": [
        [
          {
            "node": "Todoist Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "Orchestrator",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Todoist Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}