- Home
- Resources
- Integrations
- Microsoft To Do
Microsoft To Do n8n integrationAutomate Microsoft To Do with n8n.
Can a workflow really run Microsoft To Do end to end? Close to it. The Microsoft To Do n8n integration covers 15 operations across 3 resources: lists, tasks and the links that tie a task back to its source. There is no trigger node here, so another step starts the run.
Verified Trustpilot reviews · AI, automation & growth agency
What does the Microsoft To Do n8n integration actually cover?
The Microsoft To Do n8n integration is one app node, n8n-nodes-base.microsoftToDo, that reaches the Microsoft Graph endpoints behind To Do using your own OAuth2 credential. It groups 15 operations under 3 resources: List for the task lists, Task for the items inside them, and Linked Resource for the pointers that send a task back to the record it came from.
A shared inbox that turns into a list. An email step feeds Create a task with a Subject and a Due date, and the request lands in the right list instead of somebody's memory. Pair it with Gmail and the sender details ride along in the Content field, so whoever opens the task has the context already.
A Monday plan built from a spreadsheet. A schedule step reads the week's rows from Google Sheets, Create a list opens a fresh list, and one Create a task runs per row. At the end of the week, Get many tasks with Return All pulls everything back and a summary goes to Slack.
Tasks that remember where they came from. Create a linked resource attaches an Application Name and a Web URL to a task, so a card opened from ClickUp or a ticket from Jira Software stays one click away. The External ID field keeps the source identifier, which makes the reverse lookup easy later.
Some things sit outside the node. It exposes those 15 operations and nothing more, so an endpoint the node does not cover needs the HTTP Request node, which calls any To Do endpoint while reusing the same Microsoft credential through predefined authentication. That fallback is the normal answer, not a workaround.
Two limits are worth knowing before you build. There is no To Do trigger in n8n, so a workflow always starts elsewhere: a Schedule Trigger on a fixed interval, an n8n Webhook called by another service, or the trigger of another app. And on the read operations, Return All chains the API pages to bring everything back, while leaving it off caps the result at Limit. The n8n review goes into how that plays out on bigger accounts.
How do you connect Microsoft To Do to n8n?
- 01
Register an application with Microsoft
Open the Microsoft Application Registration Portal at
aka.ms/appregistrationsand select Register an application. Give it a Name, then under Supported account types choose the option that covers any organizational directory and personal Microsoft accounts. Copy the OAuth Callback URL shown in your n8n credential, paste it into Redirect URI, pick Web as the platform, and register. - 02
Generate a client secret
Back on the application page, open Certificates & secrets and add a new client secret with a description such as
n8n credential. Copy the string in the Value column and paste it into n8n as the Client Secret. The Application (client) ID from the overview page goes into Client ID. Then use the connect button in n8n, sign in to Microsoft and allow the app. - 03
Point the node at the right credential
A credential is created once in the n8n Credentials menu and reused by every workflow, so the node simply offers it in a dropdown. For app-only access with no signed-in user, select Microsoft Entra Service Principal (App-Only) in the Authentication dropdown instead. On a government cloud tenant, US Government, US Government DOD or China, set the matching Microsoft Graph API Base URL in the credential.
What can the Microsoft To Do node do?
The Microsoft To Do node exposes 15 operations across 3 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.
| Resource | Create | Get | Get Many | Update | Delete |
|---|---|---|---|---|---|
| Linked Resource | ✓ | ✓ | ✓ | ✓ | ✓ |
| List | ✓ | ✓ | ✓ | ✓ | ✓ |
| Task | ✓ | ✓ | ✓ | ✓ | ✓ |
Operations index
Linked Resource
5 operationsCreate a linked resource
linkedResource.createWhat you see in n8n
Notes & use cases
Attaches a pointer from a task back to the record it came from, so the person who opens the task can jump straight to the source.
Key parameters
- Task List Name or ID: choose the list from the dropdown, or pass an identifier with an expression such as
{{ $json.taskListId }}. - Task ID: the task that receives the link, often
{{ $json.id }}from the task you just created. - Application Name: the name of the source app sending the linked entity.
- Web URL: in Additional Fields, the deeplink to the source record, while External ID stores its identifier on that system.
Delete a linked resource
linkedResource.deleteWhat you see in n8n
Notes & use cases
Drops one link from a task and leaves the task itself in place.
Key parameters
- Task List Name or ID: the list holding the task, picked from the dropdown or set by expression.
- Task ID: the task whose link is going away.
- Linked Resource ID: the identifier of the link itself, which Get many linked resources returns.
Get a linked resource
linkedResource.getWhat you see in n8n
Notes & use cases
Returns a single link with the values stored on it, which is how a workflow reads a source identifier before deciding what to do next.
Key parameters
- Task List Name or ID: the list the task belongs to.
- Task ID: the task carrying the link.
- Linked Resource ID: the exact link to read, not the task identifier.
Get many linked resources
linkedResource.getAllWhat you see in n8n
Notes & use cases
Lists every link attached to one task, which is useful when a task ended up connected to several systems.
Key parameters
- Task List Name or ID: the list to look in.
- Task ID: the task whose links come back.
- Return All: on, n8n walks the API pages and returns every link; off, it stops at Limit.
Update a linked resource
linkedResource.updateWhat you see in n8n
Notes & use cases
Rewrites the values on an existing link rather than deleting it and building a new one.
Key parameters
- Task List Name or ID and Task ID: where the link lives.
- Linked Resource ID: the link being rewritten.
- Update Fields: the collection holding the 4 editable values, Application Name, Name, External ID and Web URL.
List
5 operationsCreate a list
list.createWhat you see in n8n
Notes & use cases
Opens a new task list in the account and returns its identifier, which the following steps use to file tasks in the right place.
Key parameters
- List Name: the display name of the list, the only required value here. An expression such as
{{ $json.client }}makes the name follow the data.
Delete a list
list.deleteWhat you see in n8n
Notes & use cases
Removes a task list from the account. This one acts on the list, not on a single task.
Key parameters
- List ID: the identifier of the list, unique in the user's mailbox. It is an identifier and not the display name, so fetch it with Get many lists and pass it through, for example
{{ $json.id }}.
Get a list
list.getWhat you see in n8n
Notes & use cases
Reads one list and returns what To Do holds on it, which confirms a list still exists before a workflow writes into it.
Key parameters
- List ID: the identifier of the list, unique in the user's mailbox, usually stored earlier in the run or read from a spreadsheet of identifiers.
Get many lists
list.getAllWhat you see in n8n
Notes & use cases
Brings back the task lists of the account. No required field here, which makes it the natural first step when you need identifiers.
Key parameters
- Return All: on, every list comes back page after page; off, the run stops at Limit.
- Limit: the maximum number of lists returned when Return All stays off.
Update a list
list.updateWhat you see in n8n
Notes & use cases
Renames an existing list. The tasks inside it stay where they are.
Key parameters
- List ID: the identifier of the list, unique in the user's mailbox.
- New List Name: the display name that replaces the old one, both values required.
Task
5 operationsCreate a task
task.createWhat you see in n8n
Notes & use cases
Files a task in a chosen list. This is the operation most workflows are built around.
Key parameters
- List Name or ID: the destination list, chosen from the dropdown or set by expression.
- Subject: a brief description of the task, the line people read first.
- Additional Fields: adds Content for the body, Due and Reminder as dates in the given time zone, Importance among low, normal and high, and Status.
Delete a task
task.deleteWhat you see in n8n
Notes & use cases
Removes a single task from a list, which is the right move when the task should never have been created.
Key parameters
- List Name or ID: the list the task sits in.
- Task ID: the task to remove, typically carried from an earlier step as
{{ $json.id }}.
Get a task
task.getWhat you see in n8n
Notes & use cases
Reads one task and returns its current values, so a workflow can branch on what the task looks like right now.
Key parameters
- List Name or ID: where to look.
- Task ID: the task to read.
Get many tasks
task.getAllWhat you see in n8n
Notes & use cases
Pulls the tasks of one list, which is how a workflow reports on a list rather than on a single item.
Key parameters
- List Name or ID: the list to read, the only required field.
- Return All: on, n8n chains the API pages until the list is exhausted; off, it returns at most Limit tasks.
Update a task
task.updateWhat you see in n8n
Notes & use cases
Changes an existing task in place, including closing it.
Key parameters
- List Name or ID and Task ID: which task gets edited.
- Update Fields: holds the 6 editable values, Subject, Content, Due Date Time, Reminder, Importance and Status, where
completedis what marks a task as done.
Need help automating Microsoft To Do with n8n?
A person reads every message.
Questions people ask next
01Is the Microsoft To Do n8n integration free?
02What credentials does the Microsoft To Do node need?
03What are the limits of the Microsoft To Do node?
04Can n8n react to a new Microsoft To Do task in real time?
05n8n or Make for Microsoft To Do?
Get our weekly integration tips.
No spam. Unsubscribe anytime.


